strcmp函数求解

[复制链接]
1391|8
 楼主| yangguangaisha 发表于 2014-5-30 23:20 | 显示全部楼层 |阅读模式
MSP430F5529下开发
if(!strcmp(s1,s2)){
/***/
}
s1和s2完全一致的字符串,if就是判断不通过,不知道什么原因?
 楼主| yangguangaisha 发表于 2014-5-30 23:20 | 显示全部楼层
有人遇到过类似问题吗?
匿名  发表于 2014-5-30 23:41
将两个字符串s1,s2比较,如果s1>s2,输出一个正数;s1<s2输出一个负数,s1=s2,输出0。输出的正数或负数的绝对值应是比较的两个字符串的ASCII码的差值。例如‘A'与'C'的ASCII的差值为2,因此输出为‘-2’,这里有一个程序,但是我运行的时候好像结果是错的啊,我拿Ai和Fd比较,都是170,怎么会不相等啊。是不是哪里错了?求高手指点啊
#include <string.h>
#include <stdio.h>
void main()
{
char str1[80],str2[80];
int i=0,s;
puts("input string1:");
gets(str1);
puts("input string2:");
gets(str2);
while((str1==str2)&&(str1!='\0')) i++; /这句和下面一句有点不太明白,求解
析 啊/
if(str1=='\0'&&str2=='\0')
s=0;
else
s=str1-str2;
printf("\n result:%d.\n",s);
}
dirtwillfly 发表于 2014-5-31 06:30 | 显示全部楼层
yangguangaisha 发表于 2014-5-30 23:20
有人遇到过类似问题吗?

把你的S1\S2两个字符串截个图看看
elecintop 发表于 2014-5-31 08:29 来自手机 | 显示全部楼层
支持下!
kekeke 发表于 2014-5-31 08:32 来自手机 | 显示全部楼层
不懂,帮顶
li880wert 发表于 2014-5-31 15:02 | 显示全部楼层
1:确定你的字符串都是一样的,
  2:确定S1,S2都有足够的内存空间
ticomi 发表于 2014-5-31 17:45 | 显示全部楼层
可以定义S11和S22分别来测试S11和S1以及S22和S2对比的结果,查看下内存空间分配,字符值是否含有空字符等
firstblood 发表于 2014-5-31 18:32 | 显示全部楼层
字符串比较,学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

168

主题

1522

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部