Проблемы с кодировкой Windows-1251
Русские символы возвращают отрицательные коды, вместо кодов от 192 до 255. system("chcp 1251"); прописано. Как использовать нормальные коды вместо отрицательных?

Ответы (1 шт):
Автор решения: Генс
→ Ссылка
/* Если у вас Windows!!!
Вот так и printf("Введите:"); не будет выводить краказябры
и коды символов будут такие как вы хотите.
*/
#include <stdio.h>
#include <windows.h>
#include <locale.h>
#include <wctype.h>
#include <stdlib.h>
#include <wchar.h>
int main(void)
{
setlocale(LC_CTYPE, "RU");
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
int total=-1;
wchar_t ch;
printf("Введите текст:\n");
while((ch=getchar( ))!='\n')
{
total++;
if(total%8==0)
putchar('\n');
putchar(ch);
printf("-%d ",ch);
}
return 0;
}