打印这个权利的最小跨平台代码?

时间:2018-05-04 14:27:42

标签: c++ unicode cout

考虑以下示例:

#include <iostream>

int main() {
    std::cout << "abc" << std::endl;
    std::wcout << L"abc" << std::endl;

    std::cout << "абв" << std::endl;
    std::wcout << L"абв" << std::endl;

    return 0;
}

在Linux上,它的输出如下:

abc
abc
абв
012

在Windows上就像这样(注意没有最后一行):

abc
abc
рст

在两个平台上打印“абв”需要做出哪些(最小)更改?

ETA:请注意,此问题不是关于混合不同的流(删除coutwcout修复任何内容),也不是关于源文件编码(读取字符串而不是硬编码它们)也没有帮助。)

0 个答案:

没有答案