今天我在逛网页的时候,看见了下面的一行代码:
unsigned number = 7;
什么是 unsigned int ?
怎么控制输出无符号整型(unsigned int)变量 ?
#include "stdio.h"int main(){
unsigned int num_one = 5; // 也可以 unsigned num_one = 5; 这样定义 int num_two = -7; /* * %u 控制输出 十进制无符号整数 * %d 控制输出 十进制有符号整数 */ printf("这是输出无符号的结果 %u\n",num_one + num_two); printf("这是输出有符号的结果 %d\n",num_one + num_two); return 0;}
运行结果如下:
这是输出无符号的结果 4294967294这是输出有符号的结果 -2
为什么两个结果不一样 ?
printf("这是输出无符号的结果 %u\n",num_one + num_two);
输出的是无符号十进制整数。由于-2<0,所以输出了如上结果。 我们将上面的代码