Русский язык, qstring и unicode
У меня возникла проблема с кодировкой символов в qt проектах на visual studio. Если в вкратце в проектах с qt у меня появляется ошибка в std::u32string temp = U"Русский язык"; но если я заместо Русский язык вставлю что то на английском ошибки пропадает и если я к примеру создам консольный проект и вставлю туда эту строку ошибок не будет, ошибки происходят непосредственно от компилятора. Я работаю в visual studio в связке с qt
Вот самый простой код в котором происходят ошибки
#include <QtWidgets/QApplication>
#define CURL_STATICLIB
#include <clocale>
#include <curl/curl.h>
#include <iostream>
int main(int argc, char* argv[])
{
std::u32string str = U"Хай";
return 0;
}
и вот ошибки
Ошибка C2001 newline в константе
Ошибка C2143 синтаксическая ошибка: отсутствие ";" перед "return"
Ответы (1 шт):
Решение
Чтобы исправить в Visual studio нужно файл > сохранить как > возле кнопки сохранить есть стрелочка надо нажать на нее > сохранить с кодировкой > под надписью Кодировка найдите в списке Юникод (utf-8 c сигнатурой) > OK