显示带前导零的十六进制整数
Display an int number in hexadecimal with leading zeros
我用 fscanf(file_input, "%X", &data);
读取了像 ABCD
这样的整数数据
这里没有问题,如果我的号刚好有4组!= 0
例如,如果读取 0002
它只显示我 2
,或者对于 00AB
它给我 AB
用printf("%X", data);
表示
即使它们是零,是否也可以打印正好 4 个组?
我尝试了 printf("%4X", &data);
,但结果向右移动了 4 个空格。
你能帮帮我吗?
按照我猜您的需要,以从零开始的 4 组显示。
使用这个:
printf("%04x",data);
在printf()
和朋友中,%X
等字段说明符可以采用width 参数。对于 4 的字段宽度,这将是
printf("%4X", data);
左边用空格填充。如果你想让它在右边填充它会是
printf("%-4X", data);
要补零,这样做
printf("%04X", data);
我用 fscanf(file_input, "%X", &data);
ABCD
这样的整数数据
这里没有问题,如果我的号刚好有4组!= 0
例如,如果读取 0002
它只显示我 2
,或者对于 00AB
它给我 AB
用printf("%X", data);
即使它们是零,是否也可以打印正好 4 个组?
我尝试了 printf("%4X", &data);
,但结果向右移动了 4 个空格。
你能帮帮我吗?
按照我猜您的需要,以从零开始的 4 组显示。 使用这个:
printf("%04x",data);
在printf()
和朋友中,%X
等字段说明符可以采用width 参数。对于 4 的字段宽度,这将是
printf("%4X", data);
左边用空格填充。如果你想让它在右边填充它会是
printf("%-4X", data);
要补零,这样做
printf("%04X", data);