SORU
18 Kasım 2008, Salı


__Stdcall nedir?

Win32 programlama öğreniyorum, ve WinMain prototip gibi görünüyor:

int WINAPI WinMain ( HINSTANCE instance, HINSTANCE prev_instance, PSTR cmd_line, int cmd_show )

WINAPI Bu tanımlayıcı ve ne buldu karışık oldu gibi:

#define WINAPI      __stdcall

Bu ne işe yarıyor? Dönüş yazdıktan sonra bu hiç bir şeye sahip olarak kafam karıştı. __stdcall nedir? İade türü ve İşlev Adı arasında bir şey olduğunda ne anlama geliyor?

CEVAP
18 Kasım 2008, Salı


__stdcall çağırma işlevi için kullanılır. Bu derleyici yığın, değişkenler bastırıyor ve bir dönüş değeri almak ayarlamak için geçerli olan kurallar söyler.

Diğer arama kuralları bir dizi, __cdecl, __, __fastcall ve harika __adlı çıplak thiscall vardır. __stdcall Win32 sistem çağrıları için standart çağırma.

Vikipedi details kapakları.

Bu kod (OS API gibi) dışında bir işlevi aradığınız veya OS sizi aradığında öncelikle dava tutamacı, sistem ile burada olduğu gibi) önemli. Eğer derleyici doğru çağırma haberi eğer doğru değilse o zaman muhtemelen bir yığın doğru yönetilmez olarak çok garip çöker alacak.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bobono1baby

    bobono1baby

    14 AĞUSTOS 2011
  • Michael Lummio

    Michael Lumm

    25 Mayıs 2007
  • The Fashion Sight

    The Fashion

    22 AĞUSTOS 2011