1.strcpy
①函数原型:char * strcpy(char * destination,const char * source);
②作用:将source指向的C字符串复制到destination指向的数组中,包括终止空字符(并在该点停止)
③返回值:返回destination
注意:要避免内存重叠的问题。
2.strcat
①函数原型:char * strcat(char * destination,const char * source);
②功能:将source指向的字符串接在destination的后面,拼接成一个新的字符串。
③返回值:返回destination
注意:destination的大小要足够大
3.strstr
①函数原型:const char * strstr(const char * str1,const char * str2);
②功能:在str1中寻找子字符串str2,并返回第一个找到的地址
③返回值:指向str2中指定的整个字符序列的str1中第一个出现的指针,如果str1中不存在该序列,则为空指针
4.strcmp
①函数原型:int strcmp ( const char * str1, const char * str2 );
②功能:比较str1,str2两个字符串
③返回值:
- 若str1==str2,则返回零;
- 若str1>str2,则返回正数; //比较遇见不同的首个字符ascall码的大小
-
若str1<str2,则返回负数。 //比较遇见不同的首个字符ascall码的大小
注意:比较首次遇见不同字符的ascall码值的大小。
5.strtok
①函数原型:char * strtok(char * str,const char * delimiters);
②函数功能:将字符串拆分为标记
对此函数的一系列调用将str拆分为标记,即将delimiters中的字符当作分隔符,每次遇到delimiters中的字符,将其替换成‘\0’所以该函数会破坏原有数据。
在第一次调用时,函数需要一个C字符串作为str的参数,返回分隔符后第一个元素的地址,其第一个字符用作扫描标记的起始位置。在后续调用中,函数需要一个空指针,即str传入空指针,并使用其后第一个不是分隔符的字符地址作为下一次的开始位置。一旦在strtok的调用中找到str的终止空字符,对该函数的所有后续调用(使用空指针作为第一个参数)将返回空指针。
③返回值:每一次分割后分隔符后的第一个元素地址。
注意:由内部保留在下一次调用时使用的函数。
int main() {
char arr[] = "i like computer!";
char*p = arr;
while ((p = strtok(p, " !"))!=NULL) {
printf("%s\n", p);
p = NULL;
}
printf("%s\n", arr);
system("pause");
return 0;
}