Вопрос про ввод-вывод одного символа
#include<stdio.h>
#include<iostream>
void main()
{
setlocale(LC_ALL, "RUS"); //кириллица
char ch;
//вводим русский символ
scanf("%c",&ch);
//выводим русский символ
printf("%c",ch);
//символ выводится, но не правильный
//Помогите найти ошибку
}
Варианты:
а) разбираться с устройством utf и считывать по несколько байтов
б) сделать, чтоб использовалась какая-нибудь другая кодировка.
P.S Вот нехорошо создавать одинаковые темы в разных разделах. Получилось, что я по невнимательности лишний раз отвечаю на вопрос, на который уже ответил Енот_в_Засаде в другом разделе.
CharToOemBuff позволяет задавать количество символов преобразования.
Для одного символа задаем 1. Конечный '\0' в данном случае не нужен.
Цитата: user1
А разве не все дело в ChartoOem(или OemtoChar) ?
можно использовать и ее, но это очень неудобно. как мне кажется - универсального решения нет.