C++中的cstring库是一个用于处理字符串的库,它提供了一系列的函数,用于操作字符串,让字符串的处理更加容易。cstring库中的函数可以用来比较、拷贝、查找、替换、拆分、合并等操作字符串,以及计算字符串的长度等。
常见操作方法
-
strcmp()函数:该函数用于比较两个字符串,如果第一个字符串小于第二个字符串,返回-1;如果第一个字符串大于第二个字符串,返回1;如果两个字符串相等,返回0。
#include
#include using namespace std; int main() { char str1[] = "Hello"; char str2[] = "World"; int result = strcmp(str1,str2); if(result == 0) cout << "str1 and str2 are equal." << endl; else if(result < 0) cout << "str1 is less than str2." << endl; else cout << "str1 is greater than str2." << endl; return 0; } -
strcpy()函数:该函数用于拷贝一个字符串到另一个字符串,它的原型为:char *strcpy(char *dest, const char *src),其中dest是指向目标字符串的指针,src是指向源字符串的指针。
#include
#include using namespace std; int main() { char str1[20] = "Hello"; char str2[20]; strcpy(str2,str1); cout << "str2 = " << str2 << endl; return 0; } -
strlen()函数:该函数用于计算字符串的长度,它的原型为:size_t strlen(const char *str),其中str是指向要计算长度的字符串的指针。
#include
#include using namespace std; int main() { char str1[] = "Hello"; int len = strlen(str1); cout << "The length of str1 is " << len << endl; return 0; } -
strcat()函数:该函数用于将源字符串拼接到目标字符串的末尾,它的原型为:char *strcat(char *dest, const char *src),其中dest是指向目标字符串的指针,src是指向源字符串的指针。
#include
#include using namespace std; int main() { char str1[20] = "Hello"; char str2[20] = "World"; strcat(str1,str2); cout << "str1 = " << str1 << endl; return 0; } -
strstr()函数:该函数用于在一个字符串中查找另一个字符串,它的原型为:char *strstr(const char *str1, const char *str2),其中str1是指向要查找的字符串的指针,str2是指向要查找的字符串的指针。
#include
#include using namespace std; int main() { char str1[] = "Hello World"; char str2[] = "World"; char *p = strstr(str1,str2); cout << "The position of str2 is " << p - str1 << endl; return 0; } -
strtok()函数:该函数用于将一个字符串拆分为多个子字符串,它的原型为:char *strtok(char *str1, const char *str2),其中str1是指向要拆分的字符串的指针,str2是指向用于拆分的字符串的指针。
#include
#include using namespace std; int main() { char str1[] = "Hello World"; char *p = strtok(str1," "); while(p != NULL) { cout << p << endl; p = strtok(NULL," "); } return 0; }