Что означает префикс 0x
для числа?
const int shared_segment_size = 0x6400;
Это из C-программы. Я не могу вспомнить, что это значит и, в частности, что означает буква x
.
Что означает префикс 0x
для числа?
const int shared_segment_size = 0x6400;
Это из C-программы. Я не могу вспомнить, что это значит и, в частности, что означает буква x
.
Литералы, начинающиеся с 0x
, представляют собой шестнадцатеричные целые числа. (основание 16)
Число 0x6400
равно 25600
.
6 * 16^3 + 4 * 16^2 = 25600
Пример, включая буквы (также используемые в шестнадцатеричной нотации, где A = 10, B = 11... F = 15)
Число 0x6BF0
равно 27632
.
6 * 16^3 + 11 * 16^2 + 15 * 16^1 = 27632
24576 + 2816 + 240 = 27632
В C и языках, основанных на синтаксисе C, префикс 0x
означает шестнадцатеричный (базовый 16).
Таким образом, 0x400 = 4 & times; (16 2) + 0 & times; (16 1) + 0 & times; (16 0) = 4 & times; ((2 4) 2) = 2 2 & times; 2 8= 2 10= 1024 или один двоичный K.
Итак, 0x6400 = 0x4000 + 0x2400 = 0x19 & times; 0x400 = 25K
Приветствия и hth.,
Это шестнадцатеричное число.
0x6400 переводит на 4 * 16 ^ 2 + 6 * 16 ^ 3 = 25600
Числа, начинающиеся с 0x
, являются шестнадцатеричными (база 16). 0x6400
представляет 25600
.
Чтобы преобразовать,
Факторы 1, 16, 256 и т.д. являются возрастающими степенями 16.
0x6400 = (0*1) + (0*16^1) + (4*16^2) + (6*16^3) = 25600
или
0x6400 = (0*1) + (0*16) + (4*256) + (6*4096) = 25600
ПРОСТО
Это префикс для обозначения числа в шестнадцатеричном, а не в каком-либо другом основании. Язык программирования C использует его, чтобы сообщить компилятору.
Пример :
0x6400
переводится в 6*16^3 + 4*16^2 + 0*16^1 +0*16^0 = 25600.
Когда компилятор читает 0x6400
, он понимает, что число является шестнадцатеричным с помощью термина 0x. Обычно мы можем понять по (6400)16 or (6400)8
или любой другой базе.
Надежда помогла как-то.
Добрый день,