大一时学东西,囫囵吞枣,很多东西都没太搞明白,为什么是这样?还有这个具体是什么样的细节根本没有把握,最近大二开始重新看书回顾了一遍,加之用代码对我自己的想法进行了验证,得出一下自己的短浅的总结
printf()其实就是一个函数,写好的一个函数,供开发人员使用,其也有返回值和参数列表,其完整表示就是int printf(char*format [,argument,…]);
对于其格式控制输出,我自己看书和通过代码验证总结了一下
#include<stdio.h>
int main(){
int i;
i=printf("fjgsdjfd\n");
printf("%d",i);
return 0;
}
其返回的是实际输出的字符数
结果如下:
fjgsdjfd
9
--------------------------------
Process exited after 0.3061 seconds with return value 0
请按任意键继续. . .
接下来说一下格式输出吧
根据我自己的总结;
printf(“格式控制字符串”,输出列表项);
其中格式控制字符串分为普通字符,转义字符,和输出项字符格式说明
普通字符就直接输出
转义字符就是一些如换行符“\n”,"\t"水平制表符等等
格式说明部分就是按规定输出
在这,例如:
#include<stdio.h>
int main(){
float a=1.12457485;
printf("%1.6f",a);
return 0;
}
运行结果:
1.124575
--------------------------------
Process exited after 0.3036 seconds with return value 0
请按任意键继续. . .
其中这个%m.nf,其中学问也不少,如果m>实际的字符就输出,空下的左边位置就用空格代替,如果是这样%-m.nf,那么就是用空下的就右边补起
如果m<实际的字符,整数部分就实际输出,小数部分就只有n位
如果是printf(("%3d",a);
如果a的字符大于3就实际输出,如果小于3就按格式输出,剩下的就是在左边用空格补起了,如果是这样%-md,那么就是用空下的就右边补起
printf大概就这么多