- strcat:
用来连接字符串,函数原型为:
char *strcat(char *dest, const char *src);
即strcat( str1, str2 )将str2连接到str1上,并且返回str1的首地址。
str1字符串后的结束符被覆盖掉,在连接完成后的字符串后加上结束符
(
- strcpy:
用来完成字符串的复制,函数原型为:
char *strcpy(char * dest, const char *src);
即strcpy( str1 , str2 )将str2中的字符串(包括结束符)复制到str1中,返回str1的首地址。
3.strcmp:
用来完成字符串的比较,返回-1,0,1。
函数原型:
extern int strcmp(const char *s1,const char *s2);
strcmp(str1,str2),
当str1<str2时,返回为负数;
当str1==str2时,返回值= 0;
当str1>str2时,返回正数。
(正数和负数返回的确切数值不同的版本会不一样)
比较规则是:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇’\0’为止。
- strncat、strncpy:
这类函数就是制定连接或者复制字节的个数,但假如在过程中遇到了结束符,就会提前终止!
所以:
#include<stdio.h>
#include<string.h>
int main() {
char str[10]="hello";
char *str1="world";
strncat(str,str1,9);
printf("%s\n",str);
return 0;
}
这段代码的输出为“helloworld”,虽然9个字节的长度超过了str1指向的字符串长度,但在第六个元素处就是一个结束符,因此提前终止,而不会出现错误。