Archiv verlassen und diese Seite im Standarddesign anzeigen : Pascal ?
MastaEda
31.07.2002, 13:51
int PASCAL WinMain(...)
Wo liegt der Unterschied zwischen "int WINAPI WinMain" und dem mit PASCAL ?
Felix Kaiser
31.07.2002, 13:54
Der Unterschied liegt bei der Parameterübergabe und der Art des Aufrufs. Dass das mit PASCAL funktioniert wär mir ehrlich gesagt neu :)
Diogenes
31.07.2002, 19:20
Tut's aber.
Es mag alle hier überraschen, aber das, was unter C WinMain ist, ist in Pascal (Borland P. 7 jedenfalls) schlicht und zart ... das Hauptprogramm.
So etwas wie:
program Message;
uses WinTypes, WinProcs;
begin
MessageBox( 0, 'Salve, Munde', 'Pascal Latina', mb_OK)
end.
geht durchaus, genau so wie Hauptschleife installieren etc.
Empfohlen wird dennoch Werkzeug wie die ObjectWindows Library...
MastaEda
31.07.2002, 19:49
Meine Frage war eigentlich was das
"int PASCAL WinMain(...)"
anstatt
"int WINAPI WinMain(...)"
in einem C++ Programm bewirkt. Hab das in einem Source Code eines DirecX Spiels gesehen und es funktioniert.
Es ist eigentlich egal ob du WINAPI oder PASCAL nimmst. Es gibt nur das Format der Übergabe an (Calling Convention), ältere Compiler kennen vielleicht nur PASCAL deswegen ist WINAPI nie falsch. (ganz alte compiler kennen wahrscheinlich keines von beiden)
also die api ist in c++ und die standardaufrufkonvention ist cdecl und sie suckt dich zu tode, probier mal ne dll zu bauchen, die ne klasse zurueckgibt oder andere coole dinge macht, dann werden destructor 2 mal aufgerufen, usw, sehr gerne mag er wenn man ne funktion x (string s) hat und man ihn ueber x (char *) aufruft!
aber nun retur zum problem der paramter stdcall verwendet eine nicht das cdecl prinzip (is da wer draufgekommen dass es suckt) sondern das pascal prinzip -> es ist moeglich dass pascal und stdcall identishc sind, aber darauf wetten wuerde ich nicht!
@ Ryu
auch hier wirds niemanden interessieren wie dir Pascal gefällt. und wenn du Tuts suchst, dann mach einen extra thema auf. Denn hier ist es Off Topic !
die Ryu posts wurden geloescht!
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.