1.4 KiB
1.4 KiB
title | categories | date | draft | featured_image | ||
---|---|---|---|---|---|---|
UTF-8 и MinGW |
|
2015-12-03T00:00:00+03:00 | false | miniature.jpg |
Наверное, любой сталкивался с проблемой русских букв в консоли. И каждый придумывал свои костыли. Вот и я свой придумал.
Имеем мы все файлы в кодировке UTF-8. А для нормального вывода в консоль Windows нужны исходники в кодировке 1252. Конвертировать?
Зачем? Ведь компилятор это умеет.
Так что кормим компилятору вот такие параметры:
-finput-charset=utf-8 -fexec-charset=cp1252
А вывод должен иметь следующий вид:
wprintf(L"Да это же русские буквы =О");
Нужно не забывать добавлять L до строки, а также вызвать setlocale.
Пример:
#include <stdio.h>
#include <locale.h>
int main() {
setlocale(LC_ALL, "");
wprintf(L"Да это же русские буквы =О\n\n");
wprintf(L"Нажмите [Enter] для продолжения...");
getchar();
return 0;
}