Задать вопрос
@Ilya199

Можно ли в условиях языка С указывать кириллицу?

if (tolower(symbol) == 'a' || tolower(symbol) == 'а') {
		addition();
	}


выше условие, на которое ругается компилятор
|| tolower(symbol) == 'а' - тут кириллица
tolower(symbol) == 'a' - тут латинская
убрав условие с кириллицой, компилирует и не ругается
в чем может быть проблема? может, я вообще неправильно само условие написал?

main.c:21:51: warning: multi-character character constant [-Wmultichar]
if (tolower(symbol) == 'a' || tolower(symbol) == 'а') {
Сама ошибочка, которую выдает компилятор
  • Вопрос задан
  • 583 просмотра
Подписаться 1 Средний 7 комментариев
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Нетология
    Специалист по информационной безопасности + нейросети
    12 месяцев
    Далее
  • Компьютерная академия «TOP»
    Учебная программа “Разработка программного обеспечения”
    30 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
@Xilian
Программист 1С, сетевые технологии, SQL
Он ругается на несоответствие размеров символов. В С нет простых средств для работы со строками в разных кодировках. Wchar спокойно занимает и два и четыре байта, про ад работы с однобайтными вообще куча материала на форумах.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы