为什么输出时表达式的值超出取值范围也可以?
怎么解释这种现象,C+1表达式的值超出了取值范围,为什么也可显示。程序代码:
#include <stdio.h> int main(void) { short int c = 32767; printf("c + 1 = %d\n", c + 1); c = c + 1; printf("c + 1 = %d\n", c ); return 0; } /* vc2013下运行结果: --------------------------- c + 1 = 32768 c + 1 = -32768 --------------------------- */