用strcmp函数比较两个字符串结果不正确是为什么?
答案:1 悬赏:0 手机版
解决时间 2021-12-28 12:12
- 提问者网友:溺爱和你
- 2021-12-27 20:28
精选
最佳答案
- 五星知识达人网友:上分大魔王
- 2022-01-10 03:55
strcmp的实现是这样的,对两个字符串,先比较第一个字符,如果不相等,返回差值。如果相等,继续比较下一个字符,直到有不相等或遇到‘\0’时结束。
现在你把数组a和b传入,因为前三个字符都相等,会越界继续比较的。
如果你想比较两个字符串,字符串是要用‘\0’结束的。
如果你只想比较前n个,可以使用strncmp,strncmp(a,b,3);
现在你把数组a和b传入,因为前三个字符都相等,会越界继续比较的。
如果你想比较两个字符串,字符串是要用‘\0’结束的。
如果你只想比较前n个,可以使用strncmp,strncmp(a,b,3);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯