1、strcat(字符串连接函数)
一般形式strcat(字符数组1,字符数组2),将字符串2接到字符串1后面
char* my_strcat(char* StrDest, const char* StrSrc) { char *des = StrDest; assert((StrDest!=NULL)&&(StrSrc!=NULL)); while (*StrDest) { StrDest++; }//StrDeest指向' ',可以直接赋值吗? while (*StrDest++= *StrSrc++);
*StrDest='/0'; return des; }
调用时两个参数要传字符数组,字符数组必须足够大到可以容纳字符数组2
int main() { char str1[20] = "I am "; char str2[10] = "a student"; puts(my_strcat(str1, str2)); }
2、strcpy(字符串复制函数)
一般形式strcpy(字符数组1,字符串2),将字符串2复制到字符数组1中去
char* my_strcpy(char* StrDest,const char* StrSrc) { char *des = StrDest; assert((StrDest!=NULL)&&(StrSrc!=NULL)); while (*StrDest++ = *StrSrc++);//<- return des; } int main() { char str1[20] = "I am 345453656"; char str2[]="a student"; puts(my_strcpy(str1, "ccc"));//ccc puts(my_strcpy(str1, str2));//a student
不能用赋值语句将字符串常量或字符数组给字符数组(用strcpy函数)
str1="china";
str1=str2;
3、strlen(字符串长度)
一般形式strcpy(字符数组)
int my_strlen(const char* str) { assert(str != NULL); int len = 0; while (*str++!='