144 votes

Que signifient les nombres utilisant la notation 0x ?

Que signifie un 0x sur un nombre ?

 const int shared_segment_size = 0x6400;

C'est à partir d'un programme C. Je ne me souviens pas de ce que cela signifie et en particulier de ce que signifie la lettre x .

141voto

Mysticial Points 180300

Les littéraux commençant par 0x sont des entiers hexadécimaux. (base 16)

Le nombre 0x6400 est 25600 .

 6 * 16^3 + 4 * 16^2 = 25600

Pour un exemple incluant des lettres (également utilisé en notation hexadécimale où A = 10, B = 11 ... F = 15)

Le nombre 0x6BF0 est 27632 .

 6 * 16^3 + 11 * 16^2 + 15 * 16^1 = 27632
24576    + 2816      + 240       = 27632

22voto

En C et dans les langages basés sur la syntaxe C, le préfixe 0x signifie hexadécimal (base 16).

Ainsi, 0x400 = 4×(16 2 ) + 0×(16 1 ) + 0×(16 0 ) = 4×((2 4 ) 2 ) = 2 2 × 2 8 = 2 10 = 1024, soit un K binaire .

Et donc 0x6400 = 0x4000 + 0x2400 = 0x19×0x400 = 25K

10voto

knittl Points 64110

C'est un nombre hexadécimal.

0x6400 se traduit par 4*16^2 + 6*16^3 = 25600

8voto

loyola Points 3325

FACILE

C'est un préfixe pour indiquer que le nombre est en hexadécimal plutôt que dans une autre base. Le langage de programmation C l'utilise pour dire au compilateur.

Exemple :

0x6400 traduit par 6*16^3 + 4*16^2 + 0*16^1 +0*16^0 = 25600. Lorsque le compilateur lit 0x6400 , il comprend que le nombre est hexadécimal à l'aide du terme 0x. Habituellement, nous pouvons comprendre par (6400)16 or (6400)8 ou n'importe quelle base ..

L'espoir a aidé d'une certaine manière.

Bonne journée,

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X