(strcmp)两个字符串长度不同时如何比较?
答案:2 悬赏:0 手机版
解决时间 2021-04-06 06:22
- 提问者网友:美人性情
- 2021-04-05 12:15
在C中可以用strcmp比较两个字符串的大小。但具体怎么比较我不太了解,比如字符串t="CDEF"字符串s=“QTHRG”这时候strcmp(t,s)<0不成立?为什么?
最佳答案
- 五星知识达人网友:污到你湿
- 2021-04-05 13:41
你好!!!
举例:
t="CDEF"字符串s=“QTHRG”
首先编译器会把t的第一元素和s的第一个元素比较,要是前者大于后者,比较就结束,返回一个大于o的数,要是后者大于前者,返回小于0 的数,要是相等,就把t的第2元素和s的第2个元素比较,重复刚才的过程。
t的第一个元素是‘c’,显然没有‘Q’,那就比较结束,返回一个小于0的数。
举例:
t="CDEF"字符串s=“QTHRG”
首先编译器会把t的第一元素和s的第一个元素比较,要是前者大于后者,比较就结束,返回一个大于o的数,要是后者大于前者,返回小于0 的数,要是相等,就把t的第2元素和s的第2个元素比较,重复刚才的过程。
t的第一个元素是‘c’,显然没有‘Q’,那就比较结束,返回一个小于0的数。
全部回答
- 1楼网友:北城痞子
- 2021-04-05 15:04
你好,strcmp的使用格式如下
strcmp(数组一的名称,数组二的名称);
返回值为0的时候就表示这两个字符串是相等的,否则就是不相等的。
如以下的例子:
#include<stdio.h> #include<string.h> void main() { char str1[4]={"abc"}; char str2[4]={"abc"}; int i; i=strcmp(str1,str2); printf("%d\n",i); }
就是输出一个0
表示相等。
有疑问提出。
望采纳。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯