Юникод из строкового литерала и из файла приводит к странному поведениюLinux

Ответить
Anonymous
 Юникод из строкового литерала и из файла приводит к странному поведению

Сообщение Anonymous »

У меня возникли проблемы с поддержкой юникода в C++, и у меня странное поведение. Если я загружаю строку текста в Юникоде из файла, я могу сохранить ее внутри обычной строки и без проблем вывести на стандартный вывод. Но если я использую строковый литерал Юникода с точно такими же символами, мне придется сохранить его в wstring, и он не будет выводиться должным образом. Почему?
Почему можно получить Unicode в строке вместо wstring? Почему он вычисляется правильно, а wstring не может выполнить wcout?
#include
#include
#include

using namespace std;

int main(int argc,
char* argv[])
{
ifstream infile("unicode.txt");
string strFromFile;
getline(infile, strFromFile);
infile.close();
cout

Подробнее здесь: https://stackoverflow.com/questions/784 ... -behaviour
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»