C语言基础问题

发布时间:2019-07-29 18:23:36

#include<stdio.h>

main()

{

const float PI = 3.14159;

float r;

printf("r: ");

scanf("%f",&r);

printf("面积是:%f",PI*r*r);

}

为什么还会出来这个警告:

C:\Windows\System32\afsd.c(4) : warning C4305: 'initializing' : truncation from 'const double ' to 'const float '

那位小哥哥小姐姐知道,求解答!!!

推荐回答

编译器将常量 3.14159 默认视为 const double类型(双精度),所以有警告。

可以修改如下(在常量后加个字母 f ,表示是单精度类型):

const float PI = 3.14159f;

以上问题属网友观点,不代表本站立场,仅供参考!