C语言double类型的数据存到float类型的内存中可能丢失数据

#include<stdio.h>#definepi3.14floatL(float);floatS(float);floatL(floatr){returnpi*r*2... #include <stdio.h>

#define pi 3.14

float L(float);

float S(float);

float L(float r)

{

return pi*r*2;

}

float S(float r)

{

return pi*r*r;

}

void main()

{

float l,s,r;

printf("请输入圆的半径:");

scanf("%f",&r);

l=L(r);

s=S(r);

printf("周长=%f\n,面积=%f\n", l, s);

}

有warning
warning C4244: 'return' : conversion from 'double' to 'float', possible loss of data

我只知道是因为double类型的数据存到float类型的内存中可能丢失数据。那如果存到double类型的内存中就不会丢失数据,但是要怎么改?具体详细点 谢谢了
展开
 我来答
百度网友271ff82568
2010-11-20 · TA获得超过181个赞
知道答主
回答量:46
采纳率:100%
帮助的人:42.9万
展开全部
你用的是什么编译器啊?我用TC运行了没错啊
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式