标题:求助关于函数形参表内的参数为什么不能预先定义类型
只看楼主
anson5234
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-6-4
 问题点数:0 回复次数:3 
求助关于函数形参表内的参数为什么不能预先定义类型

RT比如:
定义函数表达式
double power(double a,int n)
{ 函数体略 }

为何不能
double a;int n;
double power(a,n)
{}

还有 void main(void){}
中()内的void省略了有区别么?

请高手指教概念上的盲点~

搜索更多相关主题的帖子: 函数 形参 定义 参数 double 
2007-06-04 13:15
余来
Rank: 6Rank: 6
等 级:贵宾
威 望:26
帖 子:956
专家分:18
注 册:2006-8-13
得分:0 
这个是语法的要求吧,没什么特别意义,就像为什么中国人讲汉语一样。

2007-06-04 13:22
anson5234
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-6-4
得分:0 

是不是可以理解为

函数定义时候 形参只是让程序留出空位置 不分配内存空间
而如果预先定义的话 a 和n就被分配了内存 已经算是实参了?

2007-06-04 15:46
anson5234
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-6-4
得分:0 

我按照忽然的灵感改动了一下例题的函数字母,由此能理解了貌似`
原来的:
#include<iostream.h>
double power(double a,int n)
{
double p;
p=1.0;
while(n--)
p*=a;
return(p);

}
void main(void)
{
int n;double a;
cout<<"input n";
cin>>n;
cout<<"input a";
cin>>a;
cout<<power(a,n)<<endl;
}


改后:

#include<iostream.h>
int m;double b;
double power(double a,int n)
{
double p;
p=1.0;
while(n--)
p*=a;
return(p);

}
void main(void)
{

cout<<"input m";
cin>>m;
cout<<"input b";
cin>>b;
cout<<power(b,m)<<endl;
}

[此贴子已经被作者于2007-6-4 21:05:47编辑过]

2007-06-04 21:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-144780-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.900800 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved