lzting 发表于 2021-2-26 12:51:43

格式字符串

#include <stdio.h>
void main()
{
   int a = 150000;
       float b = 123.1234567;
       double c = 12345678.1234567;
       char d = 'p';
       printf("a=%d,%5d,%o,%x\n",a,a,a,a);
       printf("b=%f,%lf,%5.4lf,%e\n",b,b,b,b);
       printf("c=%lf,%f,%8.4lf\n",c,c,c);
       printf("d=%c,%8c\n",d,d);
}

1.这里的%e的精度是怎么判断的?
2.c的值为什么会变成单精度型输出?

王逗比666 发表于 2021-2-26 14:15:23

%e是以指数的形式输出实数,c的值因为是以%f的格式输出的所以会成为单精度,如果以双精度输出应该用%lf

巴巴鲁 发表于 2021-2-26 14:18:45

1.%e的无论是单精度还是双精度,输出一样,我保留到小数点后二十位,都一样
2.c定义时是double类型,输出用%f?
页: [1]
查看完整版本: 格式字符串