linux g ++的Unicode问题

时间:2010-11-05 15:49:50

标签: c++ gcc unicode

我的Ubuntu 10.10 linux下的unicode功能有问题。许多unicode函数无法正常工作。当我尝试遵循简单的代码时:

#include <wchar.h>

int main(int argc, char *argv[])
{
    wprintf(L"test %s %s %s\n",L"one",L"two",L"three");
    return 0;
}

使用g ++编译(gcc版本4.4.5 Ubuntu / Linaro 4.4.4.-14ubuntu5)a有如下结果:

test o t t

而非预期:

test one two three

使用unicode字符串的其他函数也无法正常工作。我在MS Windows下开发的很多代码,这是我的第一个linux编程尝试。

(在我测试这个片段的两台linux机器上出现相同的bug)

感谢您的任何建议。

1 个答案:

答案 0 :(得分:6)

您需要%ls,而不是wprintf(3)手册页中提供的内容。