问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

strcmp函数怎么定义

发布网友 发布时间:2022-05-03 09:41

我来回答

3个回答

热心网友 时间:2023-10-19 14:22

字符串比较函数,一般形式为strcmp(字符串1,字符串2)。


比较规则:


对两个字符串自左至右逐个字符相比(按ASCII码值大小比较),直到出现不同的字符或遇到‘\0’为止。如果全部字符相同,则认为相等;若出现不相同的字符,则以第一个不相同的字符的比较结果为准。


如果两个字符串都由英文字母组成,则有一个简单的规律:在英文字典中位置在后面的为“大”,还要特别注意:小写字母比大写字母“大”。


返回值:


(1)字符串1=字符串2,返回0


(2)字符串1>字符串2,返回一个正整数


(3)字符串1<字符串2,返回一个负整数。

扩展资料:


规则

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

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

当s1>s2时,返回正数。

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

"A"<"B" "a">"A" "computer">"compare"

特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。

ANSI标准规定,返回值为正数,负数,0 。而确切数值是依赖不同的C实现的。

Return Value

Returns an integral value indicating the relationship between the strings:

return value<0 the first character that does not match has a lower value inptr1than inptr2

return value=0 the contents of both strings are equal

return value>0 the first character that does not match has a greater value inptr1than inptr2

当两个字符串不相等时,C标准没有规定返回值会是1 或 -1,只规定了正数和负数。有些实现会返回1或-1,但将返回值与1或-1做比较的人,都是不合格的程序员。

有些会把两个字符的ASCII码之差作为比较结果由函数值返回。但无论如何不能以此条依据作为程序中的流程逻辑。

参考资料:百度百科-strcmp

热心网友 时间:2023-10-19 14:23

是自己实现strcmp吗?
如果是的话,代码如下:
#include <stdio.h>
int strcmp(char *s1, char *s2)
{
while((*s1++ == *s2++)&& *s1);
return (*s1 - *s2);
}
void main()
{
char a[10], b[10];
gets(a);
gets(b);
printf("%d\n", strcmp(a, b));
}

热心网友 时间:2023-10-19 14:22

字符串比较函数,一般形式为strcmp(字符串1,字符串2)。


比较规则:


对两个字符串自左至右逐个字符相比(按ASCII码值大小比较),直到出现不同的字符或遇到‘\0’为止。如果全部字符相同,则认为相等;若出现不相同的字符,则以第一个不相同的字符的比较结果为准。


如果两个字符串都由英文字母组成,则有一个简单的规律:在英文字典中位置在后面的为“大”,还要特别注意:小写字母比大写字母“大”。


返回值:


(1)字符串1=字符串2,返回0


(2)字符串1>字符串2,返回一个正整数


(3)字符串1<字符串2,返回一个负整数。

扩展资料:


规则

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

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

当s1>s2时,返回正数。

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

"A"<"B" "a">"A" "computer">"compare"

特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。

ANSI标准规定,返回值为正数,负数,0 。而确切数值是依赖不同的C实现的。

Return Value

Returns an integral value indicating the relationship between the strings:

return value<0 the first character that does not match has a lower value inptr1than inptr2

return value=0 the contents of both strings are equal

return value>0 the first character that does not match has a greater value inptr1than inptr2

当两个字符串不相等时,C标准没有规定返回值会是1 或 -1,只规定了正数和负数。有些实现会返回1或-1,但将返回值与1或-1做比较的人,都是不合格的程序员。

有些会把两个字符的ASCII码之差作为比较结果由函数值返回。但无论如何不能以此条依据作为程序中的流程逻辑。

参考资料:百度百科-strcmp

热心网友 时间:2023-10-19 14:23

strcmp(s1,s2)

热心网友 时间:2023-10-19 14:23

是自己实现strcmp吗?
如果是的话,代码如下:
#include <stdio.h>
int strcmp(char *s1, char *s2)
{
while((*s1++ == *s2++)&& *s1);
return (*s1 - *s2);
}
void main()
{
char a[10], b[10];
gets(a);
gets(b);
printf("%d\n", strcmp(a, b));
}

热心网友 时间:2023-10-19 14:23

strcmp(s1,s2)
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
李卓彬工作简历 林少明工作简历 广东工业职业技术学院怎么样 郑德涛任职简历 唐新桂个人简历 土地入股的定义 ups快递客服电话24小时 贷款记录在征信保留几年? 安徽徽商城有限公司公司简介 安徽省徽商集团新能源股份有限公司基本情况 空气炸锅干烧后能立即用吗 空气炸锅干烧会坏吗 M0NDIAL多功能空气炸锅使用前干烧十分钟,请问温度调多少? 请问如何才能防止洗澡的时候耳朵进水? 仰泳怎样才不会让耳朵进水 游泳怎样不让耳朵进水 怎么可以不让耳朵进水洗澡 机顶盒恢复出厂设置后怎么搜台 淘宝买流量可以退款吗 在淘宝买流量怎么退款 淘宝里买流量,没收到流量店主又不肯退款怎么办 在淘宝买手机流量卡能退款吗? 淘宝充流量还没到怎么申请退款 问一下在淘宝上买了一个流量套餐卡 然后不想要了 已经发货了 和客服说退款不退怎么办? 8g内存跟16g在游戏多开上差距大么、还有显卡显存越大越好么 淘宝上买流量不到账怎么申请退款 淘宝店的流量包可以退款吗? 我现在是TBC的SW毕业法师,想最大化DPS,请教各位所用天赋和手法 尊敬的魔法师 我想拥有魔法,像你一样成为魔法师,我大概是6岁时就想拥有魔法,你能教我魔法吗? 假面骑士wizard中法爷一共有多少种元素形态? c++中strcmp函数怎么使用? 字符串比较函数strcmp 百度网盘一个账号可以几个设备同时登陆? c语言strcmp函数? 哪位大神有婚外情事第三季高清百度云资源 第三部作品失败后,姜文不服气,跟张艺谋一样,耍了个小聪明。后来怎么样? c++中strcmp函数如何使用?? 凌潇肃和唐一菲的婚结得有多艰难? 一部美国电影,讲述婚外情,发生在美国农场,女的有孩子有家庭 美国一部讲出轨的电视剧叫什么 度盘一个账号可以同时几个人在线 佘诗曼主演的一部电视剧 老公有外遇的 张嘉译拍过的现代电视剧里面有一部是搞婚外情的,那个女的还得了什么病,很早了 百度网盘一个账号可以两个手机同时登陆? 有一部电视剧女主角叫吉吉和男主角叫阿杰,阿杰有外遇 求一部电影的名字 好像是惊悚片 欧美 就是讲一个妻子有外遇,丈夫给了外遇钱,叫那个外遇杀死自己的妻子。 求一部美国电影的名字,说是自己的老公外遇,每年的同一天会和第三者见面,一次见面的路上死了但不知原因 qt怎么开发数据库程序 教育部人文社会科学研究规划基金是国家级吗 河南省哲学社会科学规划项目,容易申请吗