概述
代码如下:
#include<stdio.h>
int main()
{
FILE * fp;
fp = fopen("file.txt","w");
fprintf(fp,"%-8d%-8d%-8dn",53,263,15364);
fprintf(fp,"%-8d%-8d%-8dn",643,2643,64352);
fprintf(fp,"%-8d%-8d%-8dn",4234,263,34523);
fprintf(fp,"%-8d%-8d%-8dn",54,53252,5352);
fclose(fp);
return 0;
}
运行结果:
为什么会出现如控制台一样对齐的效果?
原因:这里依旧有源代码%8d的效果,但是在记事本中的微软雅黑是比例字体(变宽字体),所以如果把这个显示字体改成等宽字体如宋体
显示效果如下:
这里小编把文件格式改为word,代码如下
#include<stdio.h>
int main()
{
FILE * fp;
fp = fopen("file.doc","w");//把文件改成word
fprintf(fp,"%-8d%-8d%-8dn",53,263,15364);
fprintf(fp,"%-8d%-8d%-8dn",643,2643,64352);
fprintf(fp,"%-8d%-8d%-8dn",4234,263,34523);
fprintf(fp,"%-8d%-8d%-8dn",54,53252,5352);
fclose(fp);
return 0;
}
此时运行结果为:
这里会有一个误区:不是说微软雅黑是变宽字体吗?
为什么这里感觉是等宽的
解释:这里是因为word中字体较小效果不明显,但选中后明显可以知道它是变宽的
最后
以上就是优秀冰棍为你收集整理的关于fprintf对齐效果问题的全部内容,希望文章能够帮你解决关于fprintf对齐效果问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复