tmain 和main 的區別

2021-08-08 14:18:12 字數 1049 閱讀 5787

_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 函式簽名為: intmain(); 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(intargc, wchar_t *argv)

當你程式當前的字符集為ansi時,int _tmain(int argc, tchar *argv)會被翻譯成 int main(intargc, char *argv) 反正上面就是區別了。

tmain 和main 的區別

首先,這個 tmain 是為了支援unicode所使用的main乙個別名而已,既然是別名,應該有巨集定義過的,在 定義的呢?就在那個讓你困惑的裡,有這麼兩行 include include 我們可以在標頭檔案裡找到 tmain的巨集定義 define tmain main 所以,經過預編譯以後,tm...

tmain和main的區別

基本目的 main 是標準c 的函式入口。標準c 的程式入口點函式,預設字元編碼格式ansi 函式簽名為 int main int main int argc,char ar tmain 是微軟作業系統 windows 提供的對unicode字符集和ansi字符集進行自動轉換用的程式入口點函式。函式...

tmain與main的區別

過c言語的人都知道每乙個c的程式都會有乙個main函式,但有時看別人寫的程式卻出現了 tmain,會感動很困惑。我當時也是很困惑,於是上網找資料看。現在將我得到的結果總結一下。因為並沒有什麼根據,如果有誤。歡迎指正 tmain與main的區別 1。main是c程式的函式,tmain是main為了支援...