_tmain是main為了支援unicode所使用的main的別名 ._tmain()不過是unicode版本的的main().
是不是用unicode不是在程式啟動的時候決定的,而是在程式編譯的時候看有沒有預處理定義"unicode",所以_tmain的作用就和使用tchar而非具體的char或w_char一樣,當編譯時定義了unicode時,就是wmain當沒定義時就是main,
用過c的人都知道每乙個c的程式都會有乙個main(),但有時看別人寫的程式發現主函式不是int main(),而是int _tmain(),而且標頭檔案也不是而是,會困惑吧?首先,這個_tmain()是為了支援unicode所使用的main乙個別名而已,既然是別名,應該有巨集定義過的,在**定義的呢?就在那個讓你困惑的裡,有這麼兩行
#include #include 我們可以在標頭檔案裡找到_tmain的巨集定義
#define _tmain main
所以,經過預編譯以後, _tmain就變成main了,這下明白了吧
main()是標準c++的函式入口。標準c++的程式入口點函式,預設字元編碼格式ansi 函式簽名為: int main(); int main(int argc, char* argv);
_tmain()是微軟作業系統(windows)提供的對unicode字符集和ansi字符集進行自動轉換用的程式入口點函式。 函式簽名為: int _tmain(int argc, tchar *argv)
當你程式當前的字符集為unicode時,int _tmain(int argc, tchar *argv)會被翻譯成 int wmain(int argc, wchar_t *argv)
當你程式當前的字符集為ansi時,int _tmain(int argc, tchar *argv)會被翻譯成 int main(int argc, char *argv) 反正上面就是區別了。
tmain 和main 的區別
首先,這個 tmain 是為了支援unicode所使用的main乙個別名而已,既然是別名,應該有巨集定義過的,在 定義的呢?就在那個讓你困惑的裡,有這麼兩行 include include 我們可以在標頭檔案裡找到 tmain的巨集定義 define tmain main 所以,經過預編譯以後,tm...
tmain 和main 的區別
tmain是main為了支援unicode所使用的main的別名 tmain 不過是unicode版本的的main 不是用unicode不是在程式啟動的時候決定的,而是在程式編譯的時候看有沒有預處理定義 unicode 所以 tmain的作用就和使用tchar而非具體的char或w char一樣,當...
tmain和main的區別
基本目的 main 是標準c 的函式入口。標準c 的程式入口點函式,預設字元編碼格式ansi 函式簽名為 int main int main int argc,char ar tmain 是微軟作業系統 windows 提供的對unicode字符集和ansi字符集進行自動轉換用的程式入口點函式。函式...