Connecting Tech Pros Worldwide Help | Site Map

Recursion with main()

Sonia
Guest
 
Posts: n/a
#1: Jul 19 '05
quick Question. Can main() function be called recursively. Anything wrong
with calling it recursively ?

Thanks


Artie Gold
Guest
 
Posts: n/a
#2: Jul 19 '05

re: Recursion with main()


Sonia wrote:[color=blue]
> quick Question. Can main() function be called recursively. Anything wrong
> with calling it recursively ?
>[/color]
Recursive `main()' is *not* legal in standard C++.

<OT>It *is* legal in C, but *rarely* a Good Idea.</OT>

HTH,
--ag




--
Artie Gold -- Austin, Texas

John Harrison
Guest
 
Posts: n/a
#3: Jul 19 '05

re: Recursion with main()



"Sonia" <smach02@hotmail.com> wrote in message
news:UyO4b.4575$UF.2204@bignews2.bellsouth.net...[color=blue]
> quick Question. Can main() function be called recursively. Anything wrong
> with calling it recursively ?
>
> Thanks
>[/color]

It is specifically forbidden in C++ (for some reason that's never been
adequately explained to me). But there is nothing wrong with this

int pseudo_main()
{
...
pseudo_main();
}

int main()
{
return pseudo_main();
}

john


Kevin Goodsell
Guest
 
Posts: n/a
#4: Jul 19 '05

re: Recursion with main()


John Harrison wrote:
[color=blue]
> "Sonia" <smach02@hotmail.com> wrote in message
> news:UyO4b.4575$UF.2204@bignews2.bellsouth.net...
>[color=green]
>>quick Question. Can main() function be called recursively. Anything wrong
>>with calling it recursively ?
>>
>>Thanks
>>[/color]
>
>
> It is specifically forbidden in C++ (for some reason that's never been
> adequately explained to me).[/color]

Well, I don't know if this is adequate or even precisely accurate, but
my understanding is that implementations can stick all kinds of
initializations stuff in at the beginning of main(), and if that stuff
were executed more than once the results could be bad.

Of course, I don't see any good reason that an implementation could not
do precisely what you did in your reply. Perhaps this point makes this
explanation inadequate.

-Kevin
--
My email address is valid, but changes periodically.
To contact me please use the address from a recent posting.

Closed Thread