测试十六进制的不一样输出方式,%x,%X,%#x,%#X;
# include <stdio.h> int main(void) { int i = 47; printf("%x\n",i); //输出结果应该是2f printf("%X\n",i); //输出结果应该是2F(大写的F) printf("%#x\n",i); //输出结果应该是0x2f(前面加0x前缀,表示16进制) printf("%#X\n",i); //输出结果应该是0X2F return(0); }
在VC++6.0中的输出结果是测试
2f 2F 0x2f 0X2F Press any key to continue
总结:
%x:以无符号十六进制整数形式(小写)输出,不输出前导符0x。
%X:以无符号十六进制整数形式(大写)输出,不输出前导符0x。
%#x:以无符号十六进制整数形式(小写)输出,输出前导符0x。
%#X:以无符号十六进制整数形式(大写)输出,输出前导符0X。
spa