| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 890 人关注过本帖
标题:关于if句的判断,请教大家!
只看楼主 加入收藏
aa_for_short
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-3-3
收藏
得分:0 
  我都明白拉 谢谢

我是广工大的菜鸟。
2006-03-03 00:42
ftlovemq
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-2-24
收藏
得分:0 
if后面的括号里是0就是非,就不执行下一条语句;
if后面的括号里是非0就是是,就执行下一条语句;
当strcmp(name1,name2)等于非0时,前面加!就是0,也就是非,说明这两个字符串不相等,也就不执行下一条语句!
当strcmp(name1,name2)等于0时,前面加!就是非0,也就是是,说明这两个字符串相等,也就执行下一条语句!

2006-03-03 08:25
血刃
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-2-15
收藏
得分:0 
怎么这么多的高手啊
不过你应该多看看c的运算符你也许就能更加明白这个原因了

我有些多余了啊!
以后你在编程的时候可以试着用strcmp(name1,name2)==0这样的方法就不会有那么多逻辑绕来绕去的了
2006-03-03 17:04
moon
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2006-3-5
收藏
得分:0 
......

晕~

首先:strcmp(name1,name2)返回值有3种情况 >0 <0 =0
好好查查函数字典吧!!



#include<stdio.h>
#include<string.h>
int main(viod)
{
char name1[10];
char name[10];
if(!strcmp(name1,name2))
printf("两字符串相同!\n");
else
printf("两字符串不同!\n");
}
可以写成:
#include<stdio.h>
#include<string.h>
int main(viod)
{
char name1[10];
char name[10];

strcmp(name1,name2)?puts(两字符串不同!):puts(两字符串相同!);
return 0;
}


ARM+LINUX嵌入式   -月满西楼
2006-03-05 15:21
快速回复:关于if句的判断,请教大家!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013969 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved