读书人

宽字符的有关问题

发布时间: 2012-05-21 18:04:41 作者: rapoo

宽字符的问题

C/C++ code
#include <iostream>using namespace std;int main(){    //宽字符    wchar_t s[100];    double d = 5.1343435;    swprintf(s, L"使用时间:%lf", d);    wprintf(L"%s", s);            //输出????5.1343435    cout<<endl;    wcout<<s<<endl;            //什么都没输出    char s2[100];    sprintf(s2, "使用时间:%lf", d);     printf("%s", s2);          //输出正常    cout<<endl;    cout<<s2<<endl;                //输出正常    return 0;}


谁解释下中文的问题。。

[解决办法]
用<<和>>,会把宽字符转换为窄字符再输出,这其中涉及到区域问题
试试在开头加上setlocale(LC_CTYPE,"chs")来设置区域

读书人网 >C++

热点推荐