C语言中:strcmp函数如何使用?

我要比较字符a与k的大小,想用这个strcmp函数来实现,具体的语句是怎么写呢?... 我要比较字符a 与k的大小,想用这个strcmp函数来实现,具体的语句是怎么写呢? 展开
 我来答
小呀小苹果950
2015-12-20 · TA获得超过2200个赞
知道小有建树答主
回答量:458
采纳率:94%
帮助的人:16.5万
展开全部
  原型:extern int strcmp(const char *s1,const char * s2);
  用法:#include <string.h>
  功能:比较字符串s1和s2。
  相关函数:wcscmp
  一般形式:strcmp(字符串1,字符串2)
  说明:
  当s1<s2时,返回值<0
  当s1=s2时,返回值=0
  当s1>s2时,返回值>0
  即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇'\0'为止。如:
  "A"<"B" "a">"A" "computer">"compare"
  特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,不能比较数字等其他形式的参数。
wmyyy102
推荐于2017-09-14 · TA获得超过118个赞
知道小有建树答主
回答量:75
采纳率:0%
帮助的人:95.8万
展开全部
#include <stdio.h>
#include <string.h>

int main()
{
char ch1[2] = "a";
char ch2[2] = "k";

int result = strcmp(ch1, ch2);

if( result > 0 )
{
printf("a要大\n");
}
else if( result < 0 )
{
printf("k要大\n");
}
else
{
printf("相等\n");
}

return 0;
}

单个字符的话其实可以直接比较,strcmp是比较字符串的,返回值是他们的差值,如果等于0说明相等。其他可以参考百科或MSDN
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wchyumo2011
2015-09-18 · TA获得超过2万个赞
知道大有可为答主
回答量:5810
采纳率:79%
帮助的人:2836万
展开全部
函数原型:extern int strcmp(const char *s1,const char *s2);
函数功能:以ascii码值比较两个字符串的大小,当s1<s2时,返回为负数,当s1=s2时,返回值= 0,当s1>s2时,返回正数。
头文件:#include <string.h>
参数说明:两个比较字符串的首地址指针。
注意事项:strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiaowife20
2011-03-20 · 超过35用户采纳过TA的回答
知道答主
回答量:68
采纳率:0%
帮助的人:71.4万
展开全部
就是对两个字符串从左到右逐个字符相比,按ASCII值大小比较,如果出现不同字符或遇到'\0'为止,如果全部字符相等;则认为相等,如果不相等的,按第一个不相等的字符的比较结果为准,
如strmp(str,str),则函数值为0,如果strmp(stra,strb)因为a的askii小于b的,所以函数值为一个负数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
依玉宇4s
2011-03-18 · TA获得超过181个赞
知道答主
回答量:399
采纳率:0%
帮助的人:124万
展开全部
strcmp简介:
函数原型int strcmp(const char *str1,const char *str2);
其作用为
将str1的各个字母的ASCII码与str2的进行比较。
若str1>str2则返回整数,若str1=str2返回0,否则,返回负数
一般这样调用:
if(strcmp(str1,str2)==0)...
else ...
当然,这是C语言的库函数,它的代码存储在某个库文件中。
在string.h里只是一个声明。
我给你写一下,大概是这样的:
int strcmp(const char *str1,const char *str2)
{
char *str3=str1,*str4=str2;
while(*str3++!=*str4++&&(*str3||*str4))
{
if(*--str3<*--str4)
return -1;
if(*str3>*str4) return 1;
str3++;str4++;
}
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式