这个C语言函数是什么意思?求解答详细

intfun(char*a,char*b){while((*a!=‘\0’)&&(*b!=‘\0’)&&(*a==*b)){a++;b++;}return(*a-*b);... int fun( char *a, char *b)
{ while ((*a!=‘\0’) && (*b!=‘\0’) && (*a==*b))
{ a++ ; b++ ; }
return (*a-*b);
}
展开
 我来答
duanggi
2019-06-11 · TA获得超过196个赞
知道小有建树答主
回答量:240
采纳率:87%
帮助的人:143万
展开全部
该函数的意思为比较字符串a和字符串b的大小,实际的效果等价于C语言中<string.h>里面的strcmp函数。如果字符串a大于字符串b,则返回大于0的数,如果字符串a小于字符串b,则返回小于0的数,否则返回0。这里说得大小关系,指的是逐个按照字符的ASCII码比较。比如“hello”> "helln",因为字符o的ASCII值大于字符n。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
4747哦
2019-06-16 · TA获得超过675个赞
知道小有建树答主
回答量:365
采纳率:73%
帮助的人:71万
展开全部
如果*a==*b,返回0;继续*(a+1)=?*(b+1),,如果不等,返回*a-*b;
如果*(a+1)=*(b+1),相等,返回0; 继续判断*(a+2)=?*(b+2),如果不等,返回差值*(a+1)-*(b+1);
如果*(a+2)=*(b+2),返回0,继续*(a+3)=?*(b+3),如果不等,返回差值*(a+2)-*(b+2),
......
直到字符变量里的内容有一个先为\0结束循环,返回*(a+i)-*(b+i)
等价于库函数里面的strcmp字符串函数:int strcmp(char *s1,char *s2) 函数功能:对s1和s2所指字符串进行比较
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式