# 使用库函数进行 C 编程中的字符串操作

> 原文： [https://www.programiz.com/c-programming/string-handling-functions](https://www.programiz.com/c-programming/string-handling-functions)

#### 在本文中，您将学习使用诸如`gets()`，`puts`，`strlen()`等库函数在 C 中操作字符串。 您将学习从用户那里获取字符串并对该字符串执行操作。

您经常需要根据问题的需要来操作[字符串](/c-programming/c-strings "C strings")。 大多数（如果不是全部）时间字符串操作可以手动完成，但这会使编程变得复杂而庞大。

为了解决这个问题，C 在[标准库](/c-programming/library-function "C standard library functions") `"string.h"`中支持大量的字符串处理功能。

下面讨论几种常用的字符串处理函数：

| 函数 | 函数作用 |
| --- | --- |
| [`strlen()`](/c-programming/library-function/strlen "Strlen()") | 计算字符串的长度 |
| [`strcpy()`](/c-programming/library-function/strcpy "Strcpy()") | 复制一个字符串到另一个 |
| [`strcat()`](/c-programming/library-function/strcat "Strcat()") | 连接（连接）两个字符串 |
| [`strcmp()`](/c-programming/library-function/strcmp "Strcmp()") | 比较两个字符串 |
| `strlwr()` | 将字符串转换为小写 |
| `strupr()` | 将字符串转换为大写 |

字符串处理功能在`"string.h"`头文件下定义。

```c
#include <string.h>
```

**注意**：您必须包含以下代码才能运行字符串处理功能。

### `gets()`和`puts()`

函数`gets()`和`puts()`是两个字符串函数，用于从用户处获取字符串输入并分别进行显示，如[上一章](/c-programming/c-strings "C strings")中所述。

```c
#include<stdio.h>

int main()
{
    char name[30];
    printf("Enter name: ");
    gets(name);     //Function to read string from user.
    printf("Name: ");
    puts(name);    //Function to display string.
    return 0;
}
```

**注意**：尽管`gets()`和`puts()`函数处理字符串，但这两个函数都在`"stdio.h"`头文件中定义。