您的位置:首页 > 大数据 > 人工智能

_tmain的_TCHAR*argv只读取到每个参数第一个字母的问题

2016-05-27 11:09 585 查看
使用_tmain的话,在ascii环境下会生成

int main(int argc, char* argv[]);

在unicode环境下会生成
int wmain(int argc, wchar_t* argv[]);

所以实际上参数得到的是一个wchar*
它一个字母占用两个字节,代表普通的英文单词和符号只用到了前一个字节,第二个字节其实是空的。当使用cout和print的打印wchar的时候,他遇到第二个字节0,就认为到末尾了,就停止了打印。

要使用wcout代替cout。

或者_tprintf代替printf。

_tprintf也是可以根据实际情况选择调用的函数的

#define _tprintf wprintf
#define _tprintf printf
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: