http://www.pronix.de -> Forum -> Knobelecke

Forum: Knobelecke

Moderatoren: broesel, juergen

Thema: C / C++

Re: C / C++

broesel (webmaster) am 08.07.2010 um 16:00

Großartige Sammlung! Ich denke wir haben dann erstmal genug.

Um das Thema abzuschliessen, hier noch die beiden Ideen, die ich anfangs hatte:

Automatische C-Prototypen:

int main(void) { foo(); }
int foo(void) {}


Rekursiver Aufruf von main():

int main(void) { main(); }


Mein g++ kompiliert das letzte Snippet zwar klaglos, der C++-Standard legt allerdings klar fest, dass ein rekursiver Aufruf von main() undefiniertes Verhalten erzeugt.

Gruss,
Philip

--
The C Programming Quiz (externer link) - bitte Fragen einreichen :)

 

Re: C / C++

icefire am 09.07.2010 um 12:17

Hi,

Zitat:

... es gibt noch eklatante Unterschiede zwischen C und C++, auf die man mit ganz gewöhnlichem C-Code stossen kann.


War wohl das gemeint: Grafik: Smilie Juchuh

Zitat:

Rekursiver Aufruf von main():

int main(void) { main(); }



mfg, Wolfgang

--
Hex, Bugs and Rock 'n Roll

 

Re: C / C++

broesel (webmaster) am 09.07.2010 um 15:37

Zitat:

War wohl das gemeint:


Nee, natürlich nicht :P

Ich meinte mit den Unterschieden, auf die man mit gewöhnlichem C-Code kommen kann, natürlich die Eigenschaft von C, dass man in vielen Fällen keine Funktionsprototypen braucht. Wenn man in C vergisst, die stdlib.h einzubinden und trotzdem malloc() verwendet, nimmt der C-Compiler das gelassen. In C++ gibt's einen Error.

Gruss,
Philip

--
The C Programming Quiz (externer link) - bitte Fragen einreichen :)