«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему вычитание «0» из символа показывает его числовое значение в C?

Почему вычитание «0» из символа показывает его числовое значение в C?

Опубликовано 21 декабря 2024 г.
Просматривать:234

Why Does Subtracting '0' from a Character Reveal its Numeric Value in C?

Декодирование символьных значений: почему вычитание «0» раскрывает числовое представление

Возникает загадочный вопрос: почему вычитание «0» из символ в C раскрывает числовое значение, которое он представляет?

Чтобы разгадать эту загадку, давайте углубимся в область ASCII (Американский стандартный код обмена информацией), который присваивает числовые коды каждому символу. «0» занимает первую позицию в этой числовой последовательности, а последующим символам постепенно присваиваются более высокие значения.

Например, «9» представляет числовое значение 57, а «0» соответствует 48. Путем вычитания «0» ' из символа мы по сути вычисляем разницу между его ASCII-кодом и ASCII-кодом '0'.

Рассмотрим пример: char c = '9'; int x = (int)(c - '0');
Здесь '9' имеет код ASCII, равный 57. Вычитание '0' (который имеет код ASCII, равный 48) дает 57 - 48 = 9, что — это именно числовое значение, представленное цифрой «9».

Следующая таблица ASCII дополнительно иллюстрирует это. концепция:

СимволASCII Код
'0'48
'1'49
'9'57

Автор вычитая «0» из любого символа, мы можем эффективно декодировать числовое значение, которое он представляет, — метод, обычно используемый в различных приложениях программирования.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3