青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

悲情土仔一生

  C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
  14 隨筆 :: 0 文章 :: 74 評(píng)論 :: 0 Trackbacks

如何輸出_tmain中的argv[]


作者:Tuuzed(土仔)  
版權(quán)聲明:可以任意轉(zhuǎn)載,轉(zhuǎn)載時(shí)請(qǐng)務(wù)必以超鏈接形式標(biāo)明文章原始出處和作者信息及本聲明
http://m.shnenglu.com/tuuzed/archive/2008/02/23/43153.html



    使用過(guò)VS2005中VC++的大俠們應(yīng)該對(duì)_tmain不陌生。是的,_tmain是Microsoft自己弄出來(lái)的東西,關(guān)于它的問(wèn)題網(wǎng)上有一堆(GOOGLE Search)。今天想用VS2005中的VC++做一個(gè)WIN32控制臺(tái)(console)下的應(yīng)用程序,向?qū)С绦蚰J(rèn)給出的是以下內(nèi)容:

 

1#include "stdafx.h"
2
3int _tmain(int argc, _TCHAR* argv[])
4{
5
6    return 0;
7
8}

9

想當(dāng)然,很好,很容易。試試列出命令的參數(shù):

 1#include "stdafx.h"
 2
 3using namespace std; //必須在stdafx.h增加#include <iostream>
 4
 5int _tmain(int argc, _TCHAR* argv[])
 6{
 7    cout << argc <<endl;
 8    cout << argv[0<<endl;
 9    return 0;
10}

11

運(yùn)行結(jié)果竟然是這樣的:

D:\MyData\CSharp\Projects\test\Debug>test

1

003A5210

003A5210”是什么值?一開(kāi)始就弄不懂了。

如果把_tmain函數(shù)變?yōu)椋?/span>

1int main(int argc, char* argv[])
2{
3    cout << argc <<endl;
4    cout << argv[0<<endl;
5    return 0;
6}

7

運(yùn)行結(jié)果正常:

D:\MyData\CSharp\Projects\test\Debug>test

1

d:\MyData\CSharp\Projects\test\Debug\test.exe

頭大了。最后分別對(duì)兩個(gè)函數(shù)運(yùn)用斷點(diǎn)中的反匯編看看,發(fā)現(xiàn)原來(lái)**argv竟然是wchar_t**,再翻弄了一下_TCHAR的聲明:typedef wchar_t     _TCHAR;
一切明白了。要輸出這個(gè)_TCHAR只能用cout的另一個(gè)版本:wcout。
為什么呢?原因很簡(jiǎn)單,因?yàn)樗麄兌紟Я艘粋€(gè)“w”在前面啊!

能正確輸出_TCHAR* argv[]的版本:

 1#include "stdafx.h"
 2
 3using namespace std;
 4
 5int _tmain(int argc, _TCHAR* argv[])
 6{
 7    wcout << argc <<endl;
 8    wcout << argv[0<<endl;
 9    return 0;
10}

11




給出一個(gè)網(wǎng)上對(duì)_tmain的一個(gè)有用的定義:
   
對(duì)于ANSI版本,"_tWinMain"就是"WinMain";對(duì)于UINCODE版本,"_tWinMain"就是"wWinMain"。  

  (比如這樣的定義:)  

1  #ifdef   _UNICODE   
2  #define   _tmain   wmain   
3  #define   _tWinMain   wWinMain   
4  #else   
5  #define   _tmain   main   
6  #define   _tWinMain   WinMain   
7  #endif 

    所以,_tmain()不過(guò)是unicode版本的的main() 

posted on 2008-02-23 22:53 土仔 閱讀(5987) 評(píng)論(9)  編輯 收藏 引用 所屬分類(lèi): 土仔編程

評(píng)論

# re: 如何輸出_tmain中的argv[] 2008-02-24 13:32 @Zeus
博主嘗試用_tprintf呢  回復(fù)  更多評(píng)論
  

# re: 如何輸出_tmain中的argv[] 2008-02-24 16:13 Javen
所有的字符串處理函數(shù)都有寬字符版和窄字符版
MS使用_t前綴的函數(shù)目的就在于期望使用一種統(tǒng)一寫(xiě)法可以方便地在寬字符版本和窄字符版本函數(shù)間快速地替換。所有的_t前綴函數(shù)都是宏定義,MS根據(jù)你的預(yù)定義,預(yù)編譯時(shí)將之替換成實(shí)際的函數(shù)。
所以,如果你用_tmain函數(shù)的話,后面的字符處理函數(shù)也盡量寫(xiě)成_t系列的  回復(fù)  更多評(píng)論
  

# re: 如何輸出_tmain中的argv[] 2008-02-24 22:01 土仔
@@Zeus
是的。如果用_tprintf就沒(méi)有問(wèn)題了。  回復(fù)  更多評(píng)論
  

# re: 如何輸出_tmain中的argv[] 2008-02-24 22:03 土仔
@Javen
確實(shí)沒(méi)錯(cuò)。只是,我是第一次接觸這個(gè)_tmain。寫(xiě)下這個(gè)的目的是留下一個(gè)解決的思路,越往下,了解得就越多了哈。  回復(fù)  更多評(píng)論
  

# re: 如何輸出_tmain中的argv[] 2008-02-25 12:07 新魔界私服
牛B  回復(fù)  更多評(píng)論
  

# re: 如何輸出_tmain中的argv[] 2008-02-25 14:08 aGAric
VS2005默認(rèn)是Unicode工程.  回復(fù)  更多評(píng)論
  

# re: 如何輸出_tmain中的argv[] 2008-12-15 15:38 莫耶
有幫助~  回復(fù)  更多評(píng)論
  

# re: 如何輸出_tmain中的argv[][未登錄](méi) 2009-04-24 15:52 Max
Javen說(shuō)的比較全面。

我最近也遇到這個(gè)類(lèi)似問(wèn)題,請(qǐng)問(wèn)如何改變這個(gè)缺省UNICODE設(shè)置,改為ANSI
Coding?

謝謝!  回復(fù)  更多評(píng)論
  

# re: 如何輸出_tmain中的argv[][未登錄](méi) 2009-04-24 15:58 Max
從前從未跟UNICODE打過(guò)交道,我的項(xiàng)目也總是缺省按單字節(jié)編碼的模式運(yùn)作,
只是這回突然出現(xiàn)問(wèn)題,有點(diǎn)暈。:-)  回復(fù)  更多評(píng)論
  

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            免费视频最近日韩| 亚洲精品五月天| 久久综合给合久久狠狠色| 亚洲看片免费| 欧美精品一区二区三区久久久竹菊 | 欧美jizzhd精品欧美喷水| 国产视频在线一区二区| 西瓜成人精品人成网站| 亚洲桃色在线一区| 国产精品久久久久aaaa| 亚洲欧美视频一区二区三区| 一本久久知道综合久久| 国产精品久久久久av免费| 亚洲永久免费精品| 亚洲免费视频网站| 国产一区二三区| 久久久精品2019中文字幕神马| 亚洲欧美日韩国产一区二区三区| 国产精品久久亚洲7777| 香蕉av福利精品导航| 午夜精品久久久久| 伊人狠狠色j香婷婷综合| 欧美+亚洲+精品+三区| 欧美bbbxxxxx| 亚洲性图久久| 亚洲欧美综合国产精品一区| 国产一区二区三区在线播放免费观看 | 韩国美女久久| 美女主播精品视频一二三四| 久久蜜臀精品av| 亚洲人成在线播放网站岛国| 亚洲精品久久久久久下一站 | 亚洲国产裸拍裸体视频在线观看乱了 | 欧美亚洲网站| 亚洲经典一区| 一个色综合av| 黄色影院成人| 最新热久久免费视频| 欧美视频日韩视频在线观看| 国产综合在线看| 欧美v日韩v国产v| 欧美欧美在线| 久久精品亚洲一区二区三区浴池| 美女国内精品自产拍在线播放| 亚洲美女91| 亚洲欧美日韩一区二区三区在线观看 | 欧美激情国产高清| 欧美色另类天堂2015| 久久久久久久综合| 欧美激情综合色| 久久精彩免费视频| 欧美久久久久久蜜桃| 久久精品导航| 欧美天天影院| 欧美激情二区三区| 国产亚洲人成网站在线观看| 亚洲黑丝在线| 激情小说亚洲一区| 一区二区三区免费在线观看| 在线精品视频在线观看高清 | 欧美精品www在线观看| 久久精品欧美日韩精品| 欧美日韩国产成人在线91| 久久久精彩视频| 国产精品久久二区二区| 亚洲大胆人体视频| 国产一区二区av| 国产精品99久久久久久久久| 亚洲韩国一区二区三区| 欧美一进一出视频| 性欧美8khd高清极品| 欧美精品久久天天躁| 欧美成人国产| 黄色一区二区三区四区| 午夜精品区一区二区三| 亚洲一区二区三区四区五区午夜| 欧美大片在线影院| 免费成人黄色av| 韩国三级电影久久久久久| 亚洲综合电影| 性久久久久久久久| 国产精品久久午夜夜伦鲁鲁| 亚洲人成人99网站| 亚洲日本成人| 欧美成人精品一区二区三区| 女人天堂亚洲aⅴ在线观看| 国精品一区二区| 欧美在线观看www| 久久精品国产2020观看福利| 国产精品视频免费观看www| 亚洲网站在线观看| 国产乱码精品一区二区三区五月婷 | 久久一二三区| 国产在线观看91精品一区| 午夜久久一区| 久久免费少妇高潮久久精品99| 国产日韩精品久久| 欧美在线影院| 免费成人av| 日韩视频不卡中文| 欧美日韩亚洲不卡| 亚洲永久精品大片| 久久精品2019中文字幕| 激情六月综合| 欧美二区视频| 在线亚洲一区二区| 欧美在线免费观看视频| 黑人操亚洲美女惩罚| 久久亚洲一区二区| 亚洲精品一级| 久久电影一区| 亚洲高清av在线| 欧美精品www| 午夜欧美精品久久久久久久| 久久久午夜精品| 亚洲精品在线一区二区| 国产精品久久77777| 欧美在线观看天堂一区二区三区| 裸体歌舞表演一区二区 | 亚洲午夜视频在线| 美玉足脚交一区二区三区图片| 亚洲国产美女| 国产精品国产a级| 久久久国产一区二区| 亚洲欧洲一区二区天堂久久| 午夜久久美女| 亚洲激情视频在线| 欧美性大战xxxxx久久久| 欧美一区二区三区视频在线观看| 免费中文日韩| 欧美一区91| 亚洲三级影片| 国产亚洲亚洲| 欧美日韩另类国产亚洲欧美一级| 午夜精品久久久| 日韩视频久久| 欧美α欧美αv大片| 亚洲欧洲99久久| 亚洲精品视频在线看| 国产在线国偷精品产拍免费yy| 欧美精品一区二区蜜臀亚洲| 欧美亚洲免费在线| 亚洲最新合集| 亚洲国产欧美一区| 久久一区二区三区av| 亚洲欧美在线看| 99精品欧美一区二区三区| 精东粉嫩av免费一区二区三区| 欧美色图首页| 欧美精品情趣视频| 久久亚洲精品视频| 香蕉尹人综合在线观看| 日韩一区二区精品| 亚洲黑丝一区二区| 欧美第一黄网免费网站| 久久国产精品网站| 亚洲在线观看视频网站| 亚洲精品一区二| 亚洲高清资源| 在线不卡亚洲| 好吊妞**欧美| 国产一区二区高清| 国产手机视频精品| 欧美影院视频| 亚洲图片欧洲图片av| 亚洲欧洲综合另类| 亚洲成人在线视频网站| 国产亚洲一二三区| 国产欧美精品一区二区三区介绍| 欧美日韩一二三区| 欧美日韩一区二区三区四区在线观看 | 亚洲欧美视频在线| 这里只有精品视频| 一区二区免费在线播放| 日韩午夜电影| 一区二区黄色| 亚洲一区二区不卡免费| 亚洲无线观看| 亚洲欧美日韩国产成人| 午夜精品久久久久久久| 亚洲欧美日韩一区在线| 欧美一区二区三区在线免费观看 | 国产精品捆绑调教| 国产精品一区二区在线| 国产午夜精品久久久久久免费视| 国产精品亚洲欧美| 国产亚洲综合精品| 一区免费观看视频| 亚洲激情电影在线| 一区二区久久久久| 亚洲欧美国内爽妇网| 午夜精品一区二区三区在线| 先锋影音国产精品| 久久亚洲国产精品一区二区 | 久久先锋影音av| 欧美高清一区二区| 欧美午夜激情视频| 国产欧美一区二区三区在线看蜜臀| 国产一区二区精品久久99| 亚洲高清不卡在线观看|