这个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);
} 展开
{ while ((*a!=‘\0’) && (*b!=‘\0’) && (*a==*b))
{ a++ ; b++ ; }
return (*a-*b);
} 展开
展开全部
该函数的意思为比较字符串a和字符串b的大小,实际的效果等价于C语言中<string.h>里面的strcmp函数。如果字符串a大于字符串b,则返回大于0的数,如果字符串a小于字符串b,则返回小于0的数,否则返回0。这里说得大小关系,指的是逐个按照字符的ASCII码比较。比如“hello”> "helln",因为字符o的ASCII值大于字符n。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果*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所指字符串进行比较
如果*(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所指字符串进行比较
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询