1、c风格
字符串操作相关函数需要#include <cstring>
或者#include <string.h>
。
// 字符数组
char greeting1[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
// 同上
char greeting2[] = "Hello";
char a[] = "hello";
char b[] = "world";
char c[99];
// a copy到 c
strcpy(c, a);
// 合并 a,b, 结果放在a
strcat(a, b);
// 字符串长度
strlen(a);
// 字符串判断相同
strcmp(a, b);
// 字符在a中第一次出现的位置(指针)
char *t1 = strchr(a, 'e');
// b在a中第一次出现的位置(指针)
char *t2 = strstr(a, b);
2、string 类
C++ 标准库提供了 string 类类型,支持上述所有的操作,另外还增加了其他更多的功能。需要#include <string>
。
string a = "hello";
string b = "world";
string c;
// 复制a到c
c = a;
// 合并a,b
c = a + b;
// 字符串大小
int len1 = c.size();
// 字符串长度
int len2 = c.length();
// 添加字符串
a.append("!");
// 查找e的位置
int i = a.find("e");
// 从开始位置找第一个a的位置
int i1 = a.find_first_of("a");
// 从末尾开始找第一个b的位置
int i2 = a.find_last_of("b");
// 从i开始4个替换为空
a.replace(i, 4, "");