strcmp(a,b),比较时是否要求两个字符串的长度相等??

比如比较 1111111111 2 -999999 -8等
2024-10-31 02:21:53
推荐回答(2个)
回答(1):

strcmp 与 strncmp 两个都是比较函数,但是都不需要规定两个字符串的长度。

strcmp 函数的使用时取字符串a , b然后依次从第一个字符开始比较,直到出现不同,然后在判断是否其大小。你可以看下下面的程序:

#include  
#include 

#define MAX 100

int main()
{
char str1[MAX];
char str2[MAX] = "123456789";

printf("please enter a string:");
scanf("%99[^\n]", str1);

printf("str1 : %s\n", str1);
printf("str2 : %s\n", str2);
printf("%d\n", strcmp(str1, str2)); //相同返回0,如果str1比str2大则返回1,反之返回-1,比较是按照ASCII来的

return 0;
}

回答(2):

完全不需要