您的位置:首页 > 编程语言 > PHP开发

VS使用TRACE _tprintf _tprintf_s wprintf wprintf_s 显示中文调试信息

2013-03-29 18:12 423 查看
在VS开发中,使用TRACE、 _tprintf 、_tprintf_s 、wprintf 、wprintf_s 输出中文调试信息时,

经常出现乱码或“_CrtDbgReport: String too long or IO Error“错误提示。

解决办法:

包含头文件locale.h;并在程序开始调用setlocale(LC_ALL, "chs")。

指定当前程序的编码为简体中文,这样便能正常打印出中文字符串了。

如:

#include <locale.h>

setlocale(LC_ALL, "chs");

另外:

TRACE0、TRACE1、TRACE2、TRACE3在定义时就已考虑了unicode,所以不需要加_T;

也可以采用OutputDebugString()来代替TRACE,它自动采用UNICODE和非UNICODE。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: