一个c语言关于printf的问题

来源:百度知道 编辑:UC知道 时间:2024/05/14 05:11:33
main()
{
int i=1; clrscr();
printf("##%*d\n",i,i);
}
输出是##1,这是为什么,它是如何运行的呢?printf("##%*d\n",i);为什么就不对了呢?

##就是两个符号,没有什么意思,所以是直接输出##
printf("%*d\n",3,5);
相当于printf("%3d\n",5);二者等价,我也是刚刚调试后才明白的
就是5前面有两个空格,结果是
..5

自己查手册。应该都有详细解释printf函数族使用%的格式说明。