2 回答
TA贡献1871条经验 获得超8个赞
考虑下面的代码,主要是说明问题所以没有提供函数定义而只提供了函数原型。
void fun1();
int fun2();
int fun3();
int main()
{
fun1();
cout << fun2() << endl;
return 0;
}
int fun3()
{
int a = fun2();
a++;
return a;
}
主调函数和被调函数是相对而言的。以上面的代码为例,相对于主函数main来说,fun1和fun2都是被调函数,而main是主调函数,相对于fun3来说,fun2就是被调函数,fun3则是fun2的主调函数。
TA贡献1845条经验 获得超8个赞
1、主调函数与被调函数是成对出现的。是主动与被动的关系。现在有A、B两个函数,A函数调用了B函数,那么,A函数就是主调函数,B函数就是被调函数。这和现实生活中的打电话是一样的,一个是主叫,一个是被叫。有意思的是,在很多编程语言里,函数间的调用就是用CALL关键字来表示的。
2、在C语言里,被调函数如果要先声明的话,一定是在主函数之前被声明的,虽然名字可以取的千奇百怪,不过先声明的话这样就比较明显好认(有很多程序员都提倡这么做,这样就可以方便的分析程序了),另外,主函数是main,看见这个就是看见主函数了。被调函数就是一个可以实行一定功能的函数,需要它有什么用,你就可以随便的定义它,完整它,所以调用函数非常的多、杂乱,不易理清头绪,但是调用函数却是一定在主函数中实现的,我说一下我自己的方法,就是先不看调用函数,先从主函数看起,当遇到调用函数时就回过头去看那个调用函数的具体内容(实际上,把调用函数的内容带入主函数中就行了,具体对待就行)。
- 2 回答
- 0 关注
- 1606 浏览
添加回答
举报