-5
uint32_t number = 00000000000000000000000000001011;
std::cout << number;

Why is the number's value 521 here?

Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
Gevv
  • 25
  • 7

1 Answers1

2

Number literals starting with a zero are interpreted as octal numbers (base 8). 1011 in base 8 is 521.

maja
  • 17,250
  • 17
  • 82
  • 125