C语言中strcmp的用法是什么?

Python017

C语言中strcmp的用法是什么?,第1张

int strcmp(char *str1, char *str2)

比较字符str1和str2是否相同。如果相同则返回0;

如果不同,在不同的字符处如果str1的字符大于str2的字符,则返回1,否则返回-1

比如:

char a[]="abcd"

char *b="abcd"

char *d="abcde"

int d=strcmp(a,b) //那么d的值是0

d=strcmp(b,d) //d的值是-1 因为 '\0' 比'e' 小

d=strcmp(d,b) //d的值是1,因为 'e' 比'\0'大

strcat

函数是把两个字符串做连接,并返回连接后的字符串。

strcat(a,b)="aab"

所以,即求

strcmp("aab","ab")

的值,

strcmp

函数只有3种值,

当前面的字符串大于后面的字符串时,返回

1

当前面的字符串小于后面的字符串时,返回

-1

当前面的字符串等于后面的字符串时,返回

0

"aab" 和

"ab",第一个字母是相等的,第二个字母

,a比b

小,

所以,最终strcmp(strcat(a,b),b)的值是:

-1

strcmp函数是string compare(字符串比较)的缩写,用于比较两个字符串并根据比较结果返回整数。基本形式为strcmp(str1,str2),若str1=str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数

扩展资料:

规则:

当s1<s2时,返回为负数;

当s1=s2时,返回值= 0;

当s1>s2时,返回正数。

即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。

参考资料:百度百科——strcmp