Win a copy of Design for the Mind this week in the Design forum!

# 0xbeef to integer

Netty poestel
Ranch Hand
Posts: 131
how does one see that "0xbeef" in

char c3 = 0xbeef;

has integer value of 48879 ?

Thx.

Chris Allen
Ranch Hand
Posts: 127
The hex value of 0xbeef can be converted to decimal as follows:

f -> 15 * (16 to power of 0) = 15 * 1 = 15
e -> 14 * (16 to power of 1) = 14 * 16 = 224
e -> 14 * (16 to power of 2) = 14 * 256 = 3584
b -> 11 * (16 to power of 3) = 11 * 4096 = 45056

marc weber
Sheriff
Posts: 11343
Exactly.

You should recognize that a numeric literal that begins with 0 is octal (base 8), and one that begins with 0x is hexadecimal (base 16). In hexadecimal, the letters a, b, c, d, e, and f are used to represent base-10 values 10, 11, 12, 13, 14, and 15 respectively.

(Note: The "x" can be either upper or lowercase -- just like an "L" to denote long, an "s" to denote short, or an "e" to denote exponent.)

Netty poestel
Ranch Hand
Posts: 131
Thanks Chris , Marc.
final query on this topic, do these kind of 'otherwise calculator-calculations' [ powers of 16 multiplied and added with 2 digit numbers ] a regular feature in the exams ?

Thx. all