Ни один из них не работает, разница не существует, поскольку ни одна из этих работ не работает. Теперь, если вы имеете в виду:
#define var 0x1f
Означает, что буквальное использование фразы var
воли теперь равной 0x1f
#define var (unsigned char) 0x1f
Означает, что буквальное использование фразы var
воли теперь на равных (unsigned char) 0x1f
Разница заключается в том, что первый var равен 0x1f
по умолчанию. Обозначает целочисленный литерал (эквивалент 31). Второе представляет собой целое число буквальное приведение к беззнаковому полукоксу (по-прежнему эквивалентно 31 в Int значении, но теперь больше похожи '\31'
)
Я никогда не видел никого из этих людей и искренне надеюсь, что никогда не буду. Это не скомпилируется. Пожалуйста, проверьте _exactly_, что вы хотели напечатать и исправить свой вопрос. – gnasher729
Ребята, давайте порежем Георгию какое-то слабое. Отсутствующий идентификатор макроса легко фиксируется. – Jens
Я ** забыл ввести идентификатор **, очень жаль !!! – Georgiev