C语言字符串处理函数

1 求字符串的长度



C语言字符串处理函数_第1张图片
strlen函数的使用

运行结果: strlen(str1)=38,sizeof(str1)=4

strlen(str1)=45, sizeof(str1)=100

strlen(str1)=53, sizeof(str1)=5

如果字符的个数等于字符数组的大小,那么strlen()的返回值就无法确定了,

例如     char str[6] = "abcxyz"; strlen(str)的返回值将是不确定的。因为str的结尾不是0,strlen()会继续向后检索,

直到遇到'\0',而这些区域的内容是不确定的。


2 strcpy_s  字符串复制

strcpy_s(dest,strlen(str1)+1, str1);

dest 目标字符串

strlen(str1)+1  复制的长度

str1 复制的源字符串

strcpy不安全  vs 里面用strcpy_s 替代



C语言字符串处理函数_第2张图片
strcpy_s 的用法



3. strcat  在字符串尾拼接字符串

格式:strcat(目标字符串 ,源字符串) // 

 将源字符串连接到目标字符串的尾部格式:

strncat(目标字符串 ,源字符串,长度n)//将源字符串前n个连接到目标字符串的尾部

注:①被追加的目标字符串  需要有足够空间    

②追加中 先去掉 目标字符串中的 \0 再进行追加将 源字符串中的\0也追加上

③有限追加注意:有限追加也会将\0追加



4 strcmp 比较函数

 格式:strcmp(字符串 1,字符串 2)// 比较1与2  

格式:strcmp(字符串 1,字符串 2,比较长度n) // 比较1与2前n个字符串



5 strchar

在字符串中查找字符的位置 strchr函数:

格式: strchar(字符串,‘字符’) // 失败返回空的值(UNLL)

 注意 :①找汉字时格式 “ 汉字 ”,是双引号非单引号         

       ② 字符使用单引号引起来  


6 strstr

在字符串中查找另外字符串的位置 strstr函数:   

格式 strstr(源字符串,“匹配字符串”)   

 注意: 匹配字符串使用双引号引起来



7 自己写的copy 函数

void copy(char * dest, char *source) {

int i = 0;

char *start = dest;

while (*dest!='\0')

source[i] = *dest;

printf("s=%c\n", *dest);

++i;

dest= start + i;

}

printf("i=%d\n", i);

source[i] = '\0';

printf("source=%s\n",source);

}

你可能感兴趣的:(C语言字符串处理函数)