zoukankan      html  css  js  c++  java
  • TRACE 在 Unicode下会出现String too long or IO Error打印不出字符串.

    因为里面有中文。

    处理方式:

    将区域设置成中文
    代码如下
    char* old_locale = _strdup( setlocale(LC_CTYPE,NULL) );
    setlocale( LC_CTYPE, "chs" );
    TRACE(_T("第一个第二个"));
    setlocale( LC_CTYPE, old_locale);
    free(old_locale);

    setlocale

    setlocale

    #pragma setlocale( "locale-string" )

    Defines the locale (country and language) to be used when translating wide-character constants and string literals. Since the algorithm for converting multibyte characters to wide characters may vary by locale or the compilation may take place in a different locale from where an executable file will be run, this pragma provides a way to specify the target locale at compile time. This guarantees that the wide-character strings will be stored in the correct format. The default locale-string is "C". The "C" locale maps each character in the string to its value as a wchar_t (unsigned short).

  • 相关阅读:
    Linux架构浅谈
    SP3精密星历简介
    sprintf的用法
    插值 回归 拟合 逼近的区别
    Linux grep命令
    看我如何下载韩寒博客文章笔记
    多线程下载
    网络爬虫python教程
    爬虫——博客实例
    Android Studio安装
  • 原文地址:https://www.cnblogs.com/aoyihuashao/p/1744446.html
Copyright © 2011-2022 走看看