unsigned

来源:互联网 发布:手机猪八戒是什么软件 编辑:程序博客网 时间:2024/06/05 19:21
  下面的代码输出是什么,为什么?
void foo(void)
{
unsigned inta = 6;
intb = -20;
(a+b> 6)? puts("> 6") : puts("<= 6");

}


结果竟然是:>6;

原来没文化真可怕

C中运算有规定,如果整型变量间进行数据运算,只要有一个变量是无符号的,结果就按无符号数据输出,因此a+b > a结果会输出 >6


0 0
原创粉丝点击