1、C/C++规定,16进制数必须以 0x开头。比如 0x1表示一个16进制数,而1则表示一个十进制,0xff,0xFF,0X102A,等等.其中的x不用区分大小写。
C/C++中,10进制数有正负之分。比如12表示正12,而-12表示负12。但8进制和16进制只能表达无符号的正整数,如果在代码中写-0xF2,C/C++并不把它当成一个负数。
2、以下是一些用法示例:
int a = 0x100F; //用一个十六进制数给变量a赋值
int b = 0x70 + a; //用一个十六进制数+变量a的值给变量b赋值
16进制数只是10进制数的一种表现形式,其存储的实际还是10进制数。所以,定义变量就是整形!
C中输入整形变量,可以按16进制格式,如:
int i;
scanf("%x", &i ); //%x按16进制输入数据
printf("%d\n", i ); //按十进制输出结果
printf("%x\n", i ); //按十六进制输出结果