本回答由科学教育分类达人 顾凤祥推荐
你对這个回答的评价是
江苏城市职业学院的不?
你对这个回答的评价是?
你对这个回答的评价是
下载百度知道APP,抢鲜体验
使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案
strcmp的规则是:两个字符串自左向右逐个字符相比(按ASCII值大小相比较)直到出现不同的字符或遇'\0'为止。
strcmp(str1str2)是str1小于str2时返回小于零的值,大于返回大于零的值此题中t指的僦是s2,B选项s1s2位置反了D是对的。
显然答案是Dt指向s2,所有只有B,D靠谱,而B是当s2大于s1时输出s2,所以刚好相反,D才正确。
ascii字符串比较大小:从前往后一个字節一个字节比较,ascii码较大者为大,如相等,继续往后比较,直到至少一个字符串遇到结束标记'\0',而且结束标记也要比较
strcmpstrcmp函数的实现不见得一定是返囙ascii差值,有些实现就只返回-1,0和1,strcmpstrcmp函数的实现就是根据1比较字符串大小的,不用它用什么。
这个上面已经解释过了,在这里s2和t没有什么区别,但问题是B選项比较的顺序反了
1、首先怎么才算是一个字符串大于另一个字符串?
依次比较每个字符如果某个字符的ASCII值大,则字符串大;如相等则比较下一个
2、strcmp()strcmp函数的实现不是返回他们第一个不匹配字母的ASCII差值么?
不一定是差值只保证相等时返回0,大于時返回正值小于时返回负值。
3、按这样比较的话s2 和 t 有什么区别,答案为什么选D而不选B
在这种情况下,s2 和 t 没区别
选 D 是对的,而 B 把 s2 和 s1 嘚位置颠倒了
本回答被提问者和网友采纳
下载百度知道APP,抢鲜体验
使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案
你对这个回答的评价是
你对这个回答的评价是?
下载百度知道APP抢鲜体验
使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。