字符串实际上是使用 NULL字符 '\0’终止的一维字符数组。
//字符数组 = 字符串
char str1[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
//自动加入\0
char str2[] = "Hello";
字符串操作
函数 | 描述 |
---|---|
strcpy(s1, s2); | 复制字符串 s2 到字符串 s1。 |
strcat(s1, s2); | 连接字符串 s2 到字符串 s1 的末尾。 |
strlen(s1); | 返回字符串 s1 的长度。 |
strcmp(s1, s2); | 如果 s1 和 s2 相同,则返回 0;如果 s1 < s2 则返回小于0;如果 s1>s2 则返回大于0 |
strchr(s1, ch); | 返回指向字符串 s1 中字符 ch 的第一次出现的位置的指针。 |
strstr(s1, s2); | 返回指向字符串 s1 中字符串 s2 的第一次出现的位置的指针。 |
说明:strcmp:两个字符串自左向右逐个字符相比(按ASCII值大小相比较)
说明:strcmp:两个字符串自左向右逐个字符相比(按ASCII值大小相比较)
C++ string类
C++ 标准库提供了 string 类类型,支持上述所有的操作,另外还增加了其他更多的功能。
#include <string>
//string 定义在 std命令空间中
usning namespace std;
string str1 = "Hello";
string str2 = "World";
string str3("天之道");
string str4(str3);
// str1拼接str2 组合新的string
string str5 = str1 + str2;
// 在str1后拼接str2 str1改变
str1.append(str2);
//获得c 风格字符串
const char *s1 = str1.c_str();
//字符串长度
str1.size();
//长度是否为0
str1.empty();