[C/C++] 为什么大家会说main函数不能被其他函数调用呢?

我的意思是说,下面这段代码可以正确执行啊。
#include <iostream>
using namespace std;
int count = 1000;
int main(int argc, char *argv[])
{
if (::count-- <= 0)
return 0;
cout << "main" << endl;
main(0, NULL);
return 0;
}

main函数是可以被调用的,并且不仅可以被自身调用,而且还能被其他函数调用。但是这样做非常不安全!因此不推荐这么做。如果希望代码循环进行,请使用安全的循环语句。

尝试调用main函数

main函数是在程序开始执行时,被系统唯一调用,且被系统调用仅一次的函数,当程序开始执行时,系统便不再关心也无法区别mian函数是否正在被其它函数调用。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-30
main就像一个man,只能他给其他函数带绿帽子,不能其他函数给他带.
当然,一个man也可以有几个孩子(参数),但是,每个man肯定只能调用其他函数,不能被调用.
事实上,一个程序就一个man.不管多少函数.
第2个回答  2011-11-29
main是主函数,是程序的入口。程序是从main开始的,只有main调用其他函数,其他函数没法调用main函数。
第3个回答  2011-11-29
一个C程序(program)必须有且仅有一个用main作为名字的函数,这个函数叫做主函数。C原都是从main开始运行,这与他在程序中的位置无关
第4个回答  2011-12-12
main函数可以被自己调用本回答被提问者采纳
相似回答