菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

C 字符串函数


字符串函数

C 语言也有许多有用的字符串函数,可用于对字符串执行某些操作。

要使用它们,您必须在程序中包含 <string.h> 头文件。

#include <string.h>

字符串长度

例如,要获取字符串的长度,您可以使用 strlen() 函数。

示例

char alphabet[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
printf("%d", strlen(alphabet));
自己动手试一试 »

字符串章节 中,我们使用 sizeof 来获取字符串/数组的大小。请注意,sizeofstrlen 的行为不同,因为 sizeof 在计数时也包括 \0 字符。

示例

char alphabet[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
printf("%d", strlen(alphabet));   // 26
printf("%d", sizeof(alphabet));   // 27
自己动手试一试 »

同样重要的是要知道 sizeof 始终返回内存大小(以字节为单位),而不是实际字符串长度。

示例

char alphabet[50] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
printf("%d", strlen(alphabet));   // 26
printf("%d", sizeof(alphabet));   // 50
自己动手试一试 »

连接字符串

要连接(合并)两个字符串,您可以使用 strcat() 函数。

示例

char str1[20] = "Hello ";
char str2[] = "World!";

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

// 打印 str1
printf("%s", str1);
自己动手试一试 »

请注意,str1 的大小应该足够大,以存储两个字符串合并后的结果(在我们的例子中是 20)。



复制字符串

要将一个字符串的值复制到另一个字符串,您可以使用 strcpy() 函数。

示例

char str1[20] = "Hello World!";
char str2[20];

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

// 打印 str2
printf("%s", str2);
自己动手试一试 »

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


比较字符串

要比较两个字符串,您可以使用 strcmp() 函数。

如果两个字符串相等,它返回 0,否则返回一个非零值。

示例

char str1[] = "Hello";
char str2[] = "Hello";
char str3[] = "Hi";

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

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

完整字符串参考

有关字符串函数的完整参考,请访问我们的 C <string.h> 库参考



×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持