016
02.09.2003, 19:11 Uhr
0xdeadbeef
Gott (Operator)
|
Ich übersetz das mal:
__cdecl, __stdcall usw. sind Makros, die dem Compiler Anweisungen über den genauen Aufbau des nativen Codes, der am Ende rauskommen soll, geben. Bei __cdecl räumt die aufrufende Funktion den Stack auf. Das hat den Vorteil, dass Ellipsen a la printf möglich sind (die genaue Anzahl der Parameter, die noch auf dem Stack liegen, ist ja nur der aufrufenden Funktion bekannt), und den Nachteil, dass der entsprechende Code bei jedem Funktionsaufruf wieder in der Executable steht. Bei stdcall räumt die aufgerufene Funktion selbst auf. Deswegen steht der Code nur einmal in jeder Funktion, dafür muss die aber auch die Anzahl der übergebenen Parameter genau kennen. -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra |