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

#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;
}
大家帮忙看下,为什么倒数第四行出问题了,这是怎么个情况,小弟实在是不懂啊...哪出问题了?

第1个回答  2012-08-03
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)这种用法
第2个回答  2012-08-03
float f1(float=5);

float是返回类型,r是形参,但还是调用不能这样写啊。应该是 f1(5);本回答被提问者采纳
第3个回答  2012-08-03
去掉 &;
写法如下:
float a=f1();

楼主请试一下,望采纳!
第4个回答  2012-08-03

float f1(float=5);
float&a=f1();
去掉
写成:float a=f1(5);
第5个回答  2012-08-03
直接写5

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网