首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

c语言中的strcmp函数

发布网友 发布时间:2022-04-21 20:03

我来回答

4个回答

热心网友 时间:2022-04-08 19:18

c风格字符串是以'\0'为结束标志的。如果你的name[10]没有初始化,用scanf得到前3个字符为abc,后面的是随机的,当你使用strcmp(name,
"abc")的时候,有可能你的name低第四个字符正好是'\0',那么此时就是两个相同,否则就是不同。
举个例子
如果你的name的分布是"abc\0defghi";此时你使用strlen获取他的长度将会是3,这就是c风格字符串以'\0'结束,后面的就不考虑了,使用strcmp也是同样的道理。

解决的办法是你在name定义的时候初始化
两种方法
1、char
name[10]
=
{0};
2、char
name[10];
memset(name,
0,
sizeof(name));

热心网友 时间:2022-04-08 20:36

函数原型:extern
int
strcmp(const
char
*s1,const
char
*s2);
函数功能:以ascii码值比较两个字符串的大小,当s1
s2时,返回正数。
头文件:#include
参数说明:两个比较字符串的首地址指针。
注意事项:strcmp(const
char
*s1,const
char
*
s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。

热心网友 时间:2022-04-08 22:11

字符串比较函数,两个字符串,从第一个字符开始比,如果相同,继续向下比,如果不同,看这两个字符的ASCII码,如果第一个字符串的比较大,则返回1,否则返回-1;

热心网友 时间:2022-04-09 00:02

请参考:
http://ke.baidu.com/view/1026924.htm
这个就是strcmp函数的用法
他比较的是字符串中字符的ASCII码值,所以可以比较大小。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com