Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: Windows ohjelmointi C:llä ja sen funktiot

panttu [16.10.2005 18:16:02]

#

Jollainlailla tullut C opeteltua, joten seuraavan lainen perustfunktio on aivan selvä tapaus

int main(int argc, char* argv[]) { }

mutta sitten nuo windowsin funktioit joiden alussa jotain aivan outoa sörsseliä

LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { }

C:n funktioissahan ensin mainitaan palautus tyyppi juu se on selvästikkin LRESULT. Tämän jälkeen tulee funktioin nimi, CALLBACK juu ei tämä ole funktioin nimi, kun se on WindowProc, mutta mikä tuo CALLBACK on. C:n oppikirjat ei sano siitä halaistua sanaakaan.

Metabolix [16.10.2005 18:29:39]

#

#define CALLBACK __stdcall
Jos ihan oikeasti kiinnostaa, niin voit Googlen avulla selvittää, mitä erilaiset kutsutavat tarkoittavat. Hakusanaksi "Calling conventions". Täällä on aika kattavasti kerrottu: http://www.codeproject.com/cpp/calling_conventions_demystified.asp

thefox [16.10.2005 21:29:50]

#

Ja tuo Metabolixin mainitsema #define siis windows.h:sta. Eli nuo Win32 APIn omat määrittelyt eivät tietenkään ole millään tapaa standardeja, niinpä niistä ei pelkkää C:tä opettavissa kirjoissa mainita halaistua sanaa.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta