Целочислительные константы
Обычно, цифровые константы имеют основание 10, однако в некоторых случаях требуется другая система счисления
Основание Пример Формат Комментарий
10 (десятичное) 123 нет
2 (двоичное) B1111011 добавляем 'B' работает только с 8-бит значениями(0 до 255), допустимые символы 0 и 1
8 (восьмеричное) 0173 добавляем "0" допустимые символы 0-7
16 (шестнадцатеричное) 0x7B добавляем "0x" допустимые символы 0-9, A-F, a-f
Пример:
101 // равен числу 101 в десятичной системе счисления ((1 * 10^2) + (0 * 10^1) + 1)
B101 // равен числу 5 в десятичной системе счисления ((1 * 2^2) + (0 * 2^1) + 1)
Двоичный формат работает только для байт (8 бит), от 0 (B0) до 255 (B11111111). Если необходимо обработать в двоичном формате int (16бит) это можно сделать в два шага:
myInt = (B11001100 * 256) + B10101010; // B11001100 старший байт
0101 // равен числу 65 в десятичной системе счисления ((1 * 8^2) + (0 * 8^1) + 1)
Внимание:
Возможно создание труднонаходимой ошибки, записывая незначащие нули в старших разрядах - компилятор может ошибчно принять ваше число за восьмеричное.
0x101 // равен числу 257 в десятичной системе счисления ((1 * 16^2) + (0 * 16^1) + 1)
U & L форматы
По умолчанию, целочислительные константы объявлены как int с соответствующими ограничесниями. Для определения таких константс другим типом данных пользуются следующими форматами записи:
'u' или 'U' определяет константу как положительную (unsigned). Например: 33u
'l' или 'L' определяет костанту в формат long. Пример: 100000L
'ul' или 'UL' определяет константу в формат unsigned long. Пример: 32767ul
Дата добавления: 2015-03-23; просмотров: 856;