有一段代码是这样的
#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectMame,char* lpszPropertyName)
{
float fNumber;
double dNnmber;
fNumber = 1.0000001
dNnmber = 1.0000001
printf("float:\t\%2.17f\sizeof(float):\t%d\r\n"
"double:\t\%2.17f\sizeof(double):\t%d\r\n" ,
fNumber, sizeof(float), dNnmber,sizeof(double));
}
我不明白输出浮点数值用%f不就可以了吗?为什么他还在%f之间加个2.17数值进去呢?
最佳答案
这是printf输出格式:
m.n:m指域宽,即对应的输出项在输出设备上所占的字符数。n指精度。用于说明输出的实型数的小数位数。为指定n时,隐含的精度为n=6位
m在WinCC中似乎被忽略了,效果跟%.17f是一样的,即小数位数为17位。
提问者对于答案的评价:
谢谢!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc275468.html