#include <stdio.h> int main(void) { unsigned ui = 0; int a = 0; if(0 > (ui - 1)) a = 1; printf("%d\n",a); printf("%u\n",ui-1); }
#include <stdio.h> int main(void) { unsigned ui = 0; int a = 0; if(0 > (ui - 1)) a = 1; printf("%d\n",a); printf("%u\n",ui-1); } 输出结果为 0 4294967295 我想问下,为什么a的值没有改变呢?ui 的值为0,0-1等于-1,是小于0的,得执行a=1,输出a 的值应该为1 第二个问题 ui-1的值为什么会是4294967295呢 这个数是怎么得出来的呢
69,382
社区成员
243,073
社区内容
加载中
试试用AI创作助手写篇文章吧