_tmain與main,winMain,wmain
1. main():WINDOWS的控制檯程序(32BIT)或DOS程序(16BIT)入口函數
WinMain():是WINDOWS的GUI程序入口函數
2. _tmain和_tWinMain的定義在<tchar.h>
#ifdef _UNICODE
#define _tmain wmain
#define _tWinMain wWinMain
#else /* ndef _UNICODE */
#define _tmain main
#define _tWinMain WinMain
#endif
如果是UNICODE則主函數是wmain或wWinMain,否則是main或WinMain
UNREFERENCED_PARAMETER的作用
這個宏在 winnt.h 中定義如下:
#define UNREFERENCED_PARAMETER(P) (P)
換句話說 UNREFERENCED_PARAMETER 展開傳遞的參數或表達式。
我們在程序開頭申明
int i;
之後就再也沒使用過i,在最高級別的警告 Level 4(/W4)進行編譯,胡會出現
“warning C4100: ''i'' : unreferenced formal parameter.”
UNREFERENCED_PARAMETER是對參數P的“假使用”,以達到避免編譯器關於未引用參數的警告。
AllocConsole()和AttachConsole()
通過AllocConsole() 和 AttachConsole() 這兩個WIN API就能實現上面的需求。這兩個API分別是在GUI(MFC)程序中分配一個控制檯和將程序附着到一個控制檯上。
用法舉例:
AttachConsole(ATTACH_PARENT_PROCESS); // 將當前程序附着到父進程上,因爲是從控制檯啓動的,所以當前程序的父進程就是那個控制檯。