C--strcmp()用法

strcmp()用法

C/C++函数,比较两个字符串。
设这两个字符串为str1,str2,
若str1==str2,则返回零;
若str1<str2,则返回负数;
若str1>str2,则返回正数。


strcmp可以用来比较字符数组,我写代码的时候需要就拿来用了一下,发现明明两个字符数组相同,但就是比较不对!于是来vc上模拟一下:
这里写图片描述
这就确实有点锈了,结果是test1比test2大!于是我就打印后面的数据:
这里写图片描述
确实是一模一样的,太久没用了都不知道怎么用了,百度了一波,有很关键的一句:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇’\0’为止。也就是说第一个程序中strcmp函数会一直向后取值比较,直到遇到不同的字符或’\0’停止,所以说后面比较到了哪里我也不清楚。
解决方法:手动加上’\0’字符:
这里写图片描述

猜你喜欢

转载自blog.csdn.net/Meteor_s/article/details/82662772