我想出了一个代码
#include <stdio.h>
int main()
{
int i = 1427;
double d = 1427.0;
printf("%#o\n", i);
printf("%#X\n", i);
printf("\n%g\n", d);
printf("%#g\n", d);
return 0;
}
这给出了输出:
02623
0X593
1427
1427.00
首先,我认为#
它用于为0
输出添加前缀,但我错了,因为它在最后一个输出中的奇怪行为是在小数点后打印零。
有人可以解释这#
是什么以及它在这里做什么吗?