一个关于关系表达式的问题!

xllfe 2001-11-01 09:54:52
#include <iostream.h>
void main()
{
char x('m'),y('n');
int n;
n=x<y;
cout<<n<<endl;
n=x==y-1;
cout<<n<<endl;
n=('y'!='y')+(5>3)+(y-x==1);
cout<<n<<endl;
}
运算结果:
1
1
2
我不明白的是:
第一个输出n得值,既然输出的值为1,表示为真
但是怎么判断的这个n为真?
以n=x<y;来进行判断吗?
n=x<y;表示什么意思呢?
我理解的是先进行关系运算符<的运算,然后把这个值赋给n,但怎么判断x和y的值呢?
因为char x('m'),y('n');这段语句给变量x和y初始化为字符常量'm'和'n',但不可能知道m和n的大小嘛!
小弟刚刚进门,还望各位师傅赐教!

...全文
41 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
李必胜 2002-03-25
  • 打赏
  • 举报
回复
char x='m',y='n';
int n;
n=x<y;//'n'的ASC码大于'm',所以n=1
cout<<n<<endl;
n=x==y-1;
cout<<n<<endl;//n=x==(y-1),x与y-1的值相等,所以为1
n=('y'!='y')+(5>3)+(y-x==1);
cout<<n<<endl;//('y'!='y')为0,(5>3)为1,(y-x==1)为1,所以结果为2.
blaster 2001-11-01
  • 打赏
  • 举报
回复
m和n的asc吗是知道的,比较其大小得出n
zjlsct 2001-11-01
  • 打赏
  • 举报
回复
x<y为真(1),将值赋给n

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧