C 标准库 string.h 提供了一系列字符串操作函数,可以在 C 语言程序中方便地进行字符串处理。下面将依次介绍这些函数的使用方法。
strcpy
char* strcpy(char* dest, const char* src);
将字符串 src
复制到字符串 dest
,并返回 dest
。需要注意的是,函数会复制字符串到 dest 的末尾,并在末尾加上空字符。
示例代码:
#include <stdio.h>
#include <string.h>
int main() {
char str1[20];
const char str2[] = "Hello world";
strcpy(str1, str2);
printf("str1: %s\n", str1);
return 0;
}
输出结果:
str1: Hello world
strcat
char* strcat(char* dest, const char* src);
将字符串 src
追加到字符串 dest
后面,并返回 dest
。需要注意的是,函数会在追加之前跳过 dest
的末尾空字符,并在追加之后加上空字符。
示例代码:
#include <stdio.h>
#include <string.h>
int main() {
char str1[20] = "Hello";
const char str2[] = " world";
strcat(str1, str2);
printf("str1: %s\n", str1);
return 0;
}
输出结果:
str1: Hello world
strlen
size_t strlen(const char* str);
返回字符串 str
的长度,不包括空字符。
示例代码:
#include <stdio.h>
#include <string.h>
int main() {
char str[] = "Hello world";
size_t len = strlen(str);
printf("字符串长度为 %zu\n", len);
return 0;
}
输出结果:
字符串长度为 11
strcmp
int strcmp(const char* str1, const char* str2);
比较字符串 str1
和 str2
的大小。如果 str1
比 str2
大,则返回正整数;如果 str1
比 str2
小,则返回负整数;如果 str1
和 str2
相等,则返回 0。
示例代码:
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "apple";
char str2[] = "banana";
int ret = strcmp(str1, str2);
if (ret == 0) {
printf("str1 和 str2 相等\n");
} else if (ret > 0) {
printf("str1 大于 str2\n");
} else {
printf("str1 小于 str2\n");
}
return 0;
}
输出结果:
str1 小于 str2
以上就是 C 标准库 string.h 的使用攻略。除了上面介绍的函数外,还有很多其他函数,如 strncpy、strncat、memcmp、memchr、memset 等。需要使用时可以参考 C 标准库相关文档。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C 标准库 string.h - Python技术站