1. 示例代码:
#include <stdio.h>
int main(void)
{
int a = -1;
unsigned int b = 1;
if (a == b) {
printf("a == b\n");
} else if (a < b) {
printf("a < b\n");
} else {
printf("a > b\n");
}
return 0;
}
2. 输出结果:
3. 原因分析:
C 语言中不同类型变量之间比较时,会转换成较大范围类型进行比较,此例中会将 a 转换为无符号变量,此时 a 变为最大的无符号数。