main不是只能出现1次吗???

John159151 2012-04-27 09:54:17
#include <stdio.h>
int main()
{
printf("hello,world\n");
main();
}
自己调用自己也可以吗????
程序结果为:不断输出hello,world
...全文
336 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
John159151 2012-04-29
  • 打赏
  • 举报
回复
其实我知道这是递归,应该是我想错了main函数只能出现一次,看来的确main函数还可以递归。at all,谢谢各位了。。。
pathuang68 2012-04-28
  • 打赏
  • 举报
回复
这是典型的recursive invoke。

这样的递归调用,当栈空间消耗殆尽之时,便是程序崩溃之时。
huanongying1201 2012-04-28
  • 打赏
  • 举报
回复
c程序中main()始终作为主调函数,是所有程序运行的入口,其它任何函数均不能调用main()函数。而递归函数是自己调用自己,还得有递归的出口,否则就会进入死循环。
ychaeong 2012-04-28
  • 打赏
  • 举报
回复
只能有一个main函数,但是可以多次调用main函数
shapijiejie 2012-04-28
  • 打赏
  • 举报
回复
main只是你程序的一个入口,递归调用的话必须要有出口
Jeson_Yang 2012-04-27
  • 打赏
  • 举报
回复
一个程序只有一个main作为哦入口地址,但是还是可以被其他函数调用,被自身(递归),也可以被其他函数调用,楼主的程序死循环了
躺枪同学 2012-04-27
  • 打赏
  • 举报
回复
以前没有注意过这个问题。现在想来,应该跟上面各位说的一样。

一个程序自己调用自己是可以的,这个就是传说中的递归。写递归的话,一般都会有退出函数的条件,你这个递归就跟死循环差不多了。
muyi66 2012-04-27
  • 打赏
  • 举报
回复
那是说一个程序的所有文件里只能定义一个main函数,但并不限制它被调用的次数。

你那个程序会因耗尽栈而死掉的。
jiligululalala 2012-04-27
  • 打赏
  • 举报
回复
递归呀递归
淼哥 2012-04-27
  • 打赏
  • 举报
回复
main不是出现一次。一个程序中只能有一个main函数作为程序入口。main函数当然也可以自己调用自己
evencoming 2012-04-27
  • 打赏
  • 举报
回复
main也是一个普通的函数,也可以递归调用 .

70,011

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧