zhanjunlihai 2023-11-12 11:39 采纳率: 25%
浏览 305

strcmp函数比较两个字符串长度不相同,返回值是多少

在这个程序中,遇到字符串长度不同 怎么比较 难道是第一个字符串和第二个字符串的'\0'比较?
还有就是返回值 不应该是ascii码的差值吗?为什么返回的是-1,1?


```c
    #include<stdio.h>
int main()
{
    char* a1 = "abcdef";
    char* a3 = "abcdc";
    char* a4 = "ccde";
    printf("%d\n", strcmp(a1,a3 ));
    printf("%d\n", strcmp(a3,a4 ));
}

结果“”:1
-1
Press any key to continue

```

  • 写回答

2条回答 默认 最新

  • micthis 2023-11-12 11:43
    关注

    strcmp(a,b),
    如果a和b相同返回0,
    如果前面都相同,到第i个位置a>b返回1,
    否则返回-1

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 11月12日