[英]what does WINAPI stand for
我已經開始在C中學習Win32 API。我看到主要功能是類似的
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow) { .. }
但我知道C中的函數就像
[ReturnType] [FunctionName] (Args) { .. }
在這種情況下,返回類型為int,函數名稱為WinMain。 那么WINAPI代表什么,是否有必要?
謝謝 。 :)
它指定了調用約定 ,即函數的參數在堆棧上的放置和管理方式。
您可以混合使用調用約定,例如,如果您正在調用某些外部代碼,例如Windows API,只要每個人都在他們期望的同一“頁面”上。
典型的c調用使用所謂的cdecl編譯。 在cdecl中,調用者清理堆棧上推送的參數。
WINAPI,也稱為“標准調用”,意味着被調用函數負責清理其參數堆棧。
MS編譯器將使用_前綴cdecl調用,而WINAPI獲取前導_並在函數名稱變形時獲得函數名稱前面的@ {BYTES-NEEDED}。 從上面的鏈接:
call _sumExample@8 ;WINAPI
call _someExample ;cdecl
贏 - Windows
API - 應用程序編程接口
Windows應用程序編程接口
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.