0
Рассмотрим следующий код:Почему ведущие нули изменяет значение
int x = 030;
cout << x;
Печатает 24 в Code :: Blocks. Зачем?
Рассмотрим следующий код:Почему ведущие нули изменяет значение
int x = 030;
cout << x;
Печатает 24 в Code :: Blocks. Зачем?
Это буквальное число буквальное, вот в чем причина.
Cite от reference:
восьмеричное-буквальным это цифра ноль (0), а затем ноль или более восьмеричных цифр (0, 1, 2, 3, 4, 5, 6, 7)
Я думаю, что это та самая причина, которая вызывает 'std :: cout << 0x030;' print 48. [Вы можете прочитать эту статью] (http://en.cppreference.com/w/CPP/язык/integer_literal). –
Начинает с «Рассматривать»: не устраивает домашнее задание. –