有符号的和无符号的相比,会将有符号的数的符号位当作数据位处理比如,unsigned int a = 10;int b = -4;if(a > b) printf("1");else if(b > a) printf("2");//输出结果是 2,b比a大原因就在于编译器将 b 的符号位(最高位) 1(表示负数) 当作数据位处理了