C语言标准输出格式化
c语言输出函数printf
和fprintf
使用修饰符格式化输出不同类型的变量。在这里总结一下各种不同的修饰符以及输出数据的格式。
修饰符
科学计数法
c语言输出修饰符
主要的修饰符如上表所示,而且可以在%
和修饰符之间添加一个整型数字来指定输出内容的宽度,以及对齐方式。超出宽度的字符正常输出,负数表示左对齐:
另外针对整型和浮点型有特别的标识可以使用。
整形
整型主要包括short
,int
,long int
,long long int
以及它们对应的无符号类型unsigned short
,unsigned int
,unsigned long int
,unsigned long long int
。整型可以以十进制(%d)、十六进制(%x)、八进制(%o)。
int l = 31;
printf( "十进制(%%d)\t%d\n", l );
printf( "十六进制(%%x,%%X)\t%x,%X\n", l, l );
printf( "八进制(%%o)\t%o\n", l );
printf( "十进制(%%04d,%%4d)\t%04d,%4d\n", l, l );
printf( "十六进制(%%04x,%%4X) \t%04x,%4X\n", l, l );
printf( "八进制(%%o04o,%%4o)\t%04o,%4o\n", l, l );
/*
十进制(%d) 31
十六进制(%x,%X) 1f,1F
八进制(%o) 37
十进制(%04d,%4d) 0031, 31
十六进制(%04x,%4X) 001f, 1F
八进制(%o4o,%4o) 0037, 37
*/
浮点型
浮点型主要包括float
,double
两种类型。可以使用%f,%g,%e进行输出。
其中%g和%s都以科学计数法的方式输出,不过%g在默认情况下包括整数位共输出六位,而%f和%e默认小数位数为六位。不过可以通过.m来指定小数点后面的位数。