关于C语言的问题,引用,大家帮帮忙吧~

#include<stdio.h>constfloatpi=3.14f;floatf;floatf1(floatr){f=r*r*pi;returnf;}intmain(... #include <stdio.h>
const float pi=3.14f;
float f;
float f1(float r)
{
f=r*r*pi;
return f;
}
int main()
{
float f1(float=5);
float&a=f1();
printf("%f\n",a);
return 0;
}
大家帮忙看下,为什么倒数第四行出问题了,这是怎么个情况,小弟实在是不懂啊...哪出问题了?
展开
 我来答
ducky8688
2012-08-03 · TA获得超过753个赞
知道小有建树答主
回答量:241
采纳率:100%
帮助的人:100万
展开全部
C语言中没用 “引用” 的概念,这是C++中才有的
在C语言中 &做为单目运算符的时候,表示取址符,例如 &a 表示变量a的地址
做为双目运算符的时候表示按位与,如 1 & 2 的结果是 0( 相当于二进制的 01 & 10 )

你这个例子中,应该是要定义一个变量a,用来接收f1函数的返回值 ,把main函数代码改成如下就可以了
int main()
{
float a=f1(5);
printf("%f\n",a);
return 0;
}
C语言中没有 float f1(float=5)这种用法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3af62fe
2012-08-03
知道答主
回答量:10
采纳率:0%
帮助的人:4.1万
展开全部
float f1(float=5);

float是返回类型,r是形参,但还是调用不能这样写啊。应该是 f1(5);
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dxf6939259
2012-08-03 · 超过27用户采纳过TA的回答
知道答主
回答量:101
采纳率:0%
帮助的人:40.5万
展开全部
去掉 &;
写法如下:
float a=f1();

楼主请试一下,望采纳!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gyunz
2012-08-03
知道答主
回答量:7
采纳率:0%
帮助的人:1.1万
展开全部

float f1(float=5);
float&a=f1();
去掉
写成:float a=f1(5);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e96ae71ed
2012-08-03 · TA获得超过728个赞
知道小有建树答主
回答量:1548
采纳率:0%
帮助的人:725万
展开全部
直接写5
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式