printf中几个不常用的格式说明

d,lx,ld,,lu,这几个都是输出32位的
hd,hx,hu,这几个都是输出16位数据的,
hhd,hhx,hhu,这几个都是输出8位的,
lld,llu,llx,这几个都是输出64位的,


举例如下:
#include 
void main()
{
char out;
out=0x80;
printf("32bit:%d,%lx,%ld,%lu\n",out,out,out,out);
printf("16bit:%hd,%hx,%hu\n",out,out,out);
printf("8bit:%hhd,%hhx,%hhu\n",out,out,out);
printf("64bit:%lld,%llx,%llu\n",out,out,out);
}




使用gcc进行编译后运行输出如下:
32bit:-128,ffffff80,-128,4294967168
16bit:-128,ff80,65408
8bit:-128,80,128
64bit:-545460846720,ffffff80ffffff80,13831608784361133864

你可能感兴趣的:(C/C++)