Если у меня есть char: char ch
, и я хочу присвоить ему значение цифра c для di git, например, если пользователь вводит 0, я хочу char иметь значение 0 ('\0'
), а не 48 ('0'
)
, если я попытаюсь scanf("c", &ch)
, ему будет присвоено 48
(значение ascii для 0), а если я попытаюсь scanf("d", &ch)
я получаю сообщение об ошибке.
Я знаю, что это можно сделать, получив его в виде строки, а затем преобразовав его в тип char, а затем используя ch-'0'
, чтобы получить значение цифры c, но возможно ли это без это лишние шаги?