float和double类型变量用%d输出的问题
在敲代码时遇到了printf("%d\n", pow(2.0, tmp) - 1);的问题,发现当tmp=1时,控制台上输出为0。在可变长参数函数(例如printf函数)或者不带原型声明函数中,在调用该函数时C自动进行类型提升(在调用函数时如果声明这个函数那么则不会提升),提升如下:——float类型的实际参数将提升到double——char、short和相应的signed、unsign...
原创
2019-03-16 20:35:06 ·
7746 阅读 ·
0 评论