Что означает 0x
приставка к номеру?
const int shared_segment_size = 0x6400;
Это из программы C. Я не могу вспомнить, что это означает и что конкретно x
означает буква .
Что означает 0x
приставка к номеру?
const int shared_segment_size = 0x6400;
Это из программы C. Я не могу вспомнить, что это означает и что конкретно x
означает буква .
0x prefix C++
приводит вас сюда прямо сейчас :)
Ответы:
Литералы, начинающиеся с, 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
0xffffffff
такие. ( 0xffffffff = -1
для 32-битного int с дополнением до 2)
В C и языках, основанных на синтаксисе C, префикс 0x
означает шестнадцатеричный (основание 16).
Таким образом, 0x400 = 4 × (16 2 ) + 0 × (16 1 ) + 0 × (16 0 ) = 4 × ((2 4 ) 2 ) = 2 2 × 2 8 = 2 10 = 1024, или один двоичный K .
Итак, 0x6400 = 0x4000 + 0x2400 = 0x19 × 0x400 = 25K
Числа, начинающиеся с, 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
любой базе ..
Надежда в чем-то помогла.
Добрый день,