最适合网络开发者的网站
C 语言。W3Schools 英文版。初学者课程

尿素 西斯

C 字符串函数


字符串函数

C 还有很多有用的字符串函数,可以用来对字符串执行某些操作。

要使用它们,您必须包括 <string.h> 程序中的头文件:

#包括<string.h>

字符串长度

例如,要获取字符串的长度,可以使用 strlen() 功能:

例子

char 字母表[] = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
printf("%d",strlen(字母表));
亲自尝试 »

在里面 字符串章节, 我们用了 sizeof 获取字符串/数组的大小。请注意sizeofstrlen 表现不同,因为sizeof 还包括\0 计数时的字符:

例子

char 字母表[] = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
printf("%d", strlen(alphabet)); // 26
printf("%d",sizeof(alphabet)); // 27
亲自尝试 »

你知道这一点也很重要 sizeof 将始终返回内存大小(以字节为单位),而不是实际的字符串长度:

例子

char 字母表[50] = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
printf("%d", strlen(alphabet)); // 26
printf("%d",sizeof(字母表)); // 50
亲自尝试 »

连接字符串

要连接(组合)两个字符串,可以使用 strcat() 功能:

例子

char str1[20] = "你好 ";
char str2[] = "世界!";

// 将 str2 连接到 str1(结果存储在 str1 中)
strcat(str1,str2);

// 打印 str1
printf("%s",str1);
亲自尝试 »

请注意 str1 应该足够大来存储两个字符串组合的结果(在我们的例子中为 20)。


复制字符串

要将一个字符串的值复制到另一个字符串,可以使用 strcpy() 功能:

例子

char str1[20] = "你好,世界!";
字符str2[20];

// 将 str1 复制到 str2
strcpy(str2,str1);

// 打印 str2
printf("%s",str2);
亲自尝试 »

请注意 str2 应该足够大来存储复制的字符串(在我们的例子中为 20)。


比较字符串

要比较两个字符串,可以使用 strcmp() 功能。

它返回 0 如果两个字符串相等,否则为非 0 的值:

例子

char str1[] = "你好";
char str2[] = "你好";
char str3[] = "嗨";

// 比较 str1 和 str2,并打印结果
printf("%d\n", strcmp(str1, str2)); // 返回 0(字符串相等)

// 比较 str1 和 str3,并打印结果
printf("%d\n", strcmp(str1, str3)); // 返回 -4(字符串不相等)
亲自尝试 »