一些处理字符串的函数

1.strlen():计算字符串的长度,并不计算字符串末尾的空字符'\0'。

2.strcat():包含两个字符串参数,将第二个字符串添加到第一个字符串的末尾,返回给第一个字符串,第二个字符串则不变。但是这个函数不会检查第一个字符串是否有足够的空间容纳两个拼接的字符串,可能会导致缓冲区溢出。

3.strncat():strcat函数的改进版,相比之下多了一个参数,第三个参数表示可添加到第一个字符串末尾的最大字符数量。把第二个参数的字符添加到第一参数上,在遇到'\0'或者在字符达到添加上限后停止。

4.strcmp():把用户的响应与已储存的字符串进行比较,如果比较结果相同,则返回0(假),否则返回非零值(真)。strcmp函数只会比较两个字符串数组中储存在第一个'\0'之前的部分。因此可以比较两个不同大小的数组中的字符串。如果比较的两个字符串,第一个字符串在字母表中的位置位于第二个字符串前面,则返回一个负值;反之则返回一个正值。strcmp比较的是字符串(双引号),而不是字符(单引号)但字符串时储存在char类型的数组中,因此可以用char类型的数组名当做strcmp的参数。

5.strncmp():含有三个参数,除了strcmp里的两个参数外,还含有一个整数参数n,用来限制两个字符串比较的长度,可以只比较前n个字符的相同或不同。

6.strcpy():包括两个参数,第二个参数所指的字符串被拷贝到第一个参数指向的数组中。第一个参数为目标字符串,第二个参数为字符串。strcpy接受两个字符串指针作为参数,且有两个属性,第一,strcpy的返回类型是char *,返回的是第一个参数的值,即一个字符的地址;第二,第一个参数不必指向数组的开始,因而可以用来拷贝一部分字符串。注意,strcpy在拷贝字符串时,将字符串的末尾空字符'\0'也拷贝进了目标字符串,因此用puts()函数来打印时,到该处就会停止。

7.strncpy():同样,是strcpy的升级版,因为strcpy并不考虑目标字符串是否能容下源字符串的副本。strncpy函数增加了第三个参数,用来指明可拷贝字符串的最大字符数。

8.sprintf():第一个参数为一个字符串指针,后面的参数同printf,将后面格式化的字符串储存在第一个参数中,并不打印出来。

猜你喜欢

转载自blog.csdn.net/o707191418/article/details/81478149