头文件:
1.strlen函数:求字符串的长度
size_t strlen(const char *s)
{
size_t len = 0;
while(*s++)
len++;
return len;
}
2.strcpy和strncpy函数:复制字符串
strcpy:将s2指向的字符串复制到s1指向的数组中。若s1和s2指向的内存空间重叠,则作未定义处理。
strncpy:将s2指向的字符串复制到s1指向的数组中。若s2的长度大于等于n,则复制到第n个字符为止。否则用null字符填充剩余部分。若s1和s2指向的内存空间重叠,则作未定义处理。
char *strcpy(char *s1,const char *s2)
{
char *tmp = s1;
while(*s1++ = *s2++)
;
return tmp;
}
char *strncpy(char *s1,const char *s2,size_t n)
{
char *tmp = s1;
while(n){
if(!(*s1++ = *s2++)) break; //遇到’\0’就结束循环
n–;
}
while(n–)
*s1++ = ‘\0’; //用’\0’填充剩余部分
return tmp;
}
3.strcat(s1, s2):连接字符串 s2 到字符串 s1 的末尾。
/* 连接 str1 和 str2 */
strcat( str1, str2);
printf(“strcat( str1, str2): %s\n”, str1 );