首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

C++ 中main函数可以调用main函数自身吗?该如何解决

2012-04-07 
C++ 中main函数可以调用main函数自身吗?c++ primer 书说主函数main不能调用自身,可是在网上找到资料说可以

C++ 中main函数可以调用main函数自身吗?
c++ primer 书说主函数main不能调用自身,可是在网上找到资料说可以调用自身。
代码如下,本人用visual studio实测发现没有问题,而且加/Za,去掉语言扩展


C/C++ code
#include <stdio.h> int main(int argc, const char **argv ) {      printf("%d\n",argc);      for(int i=0; i< argc ; i++)          printf("%s\n",argv[i]);      if(argc >0)          main(argc-1,argv);      return 0; } 



[解决办法]
答案当然是不可以,C++标准就是这么规定的

“本人用visual studio实测发现没有问题,而且加/Za,去掉语言扩展”
--- 那你就要把“C++ 中main函数可以调用main函数自身吗?”
改为“Visual C++ 中main函数可以调用main函数自身吗?”
[解决办法]
探讨本来就可以,main函数也是个函数,只不过规定了main函数做为入口点函数而已,他并不是程序的调用的第一个函数也不是最后一个函数

[解决办法]
探讨
引用:
引用:本来就可以,main函数也是个函数,只不过规定了main函数做为入口点函数而已,他并不是程序的调用的第一个函数也不是最后一个函数

然而,C++03标准 $3.6.1/3 says:
The function main shall not be used within a program.

c+……

[解决办法]
“给定一个小点的输入,完整单步跟踪一遍。”是理解递归函数工作原理的不二法门!
递归函数关注以下几个因素
·退出条件
·参数有哪些
·返回值是什么
·局部变量有哪些
·全局变量有哪些
·何时输出
·会不会导致堆栈溢出

热点排行