Почему это утверждение int a= 012945; в C++ дает мне ошибку типа "недопустимая восьмеричная цифра" ?
Я использую visual studio 2017,так что это из-за того, что он дает мне ошибку "недопустимая восьмеричная цифра"?
Что я уже пробовал:
если я даю целочисленное значение переменной, которое начинается с 0, то только эта ошибка приходит примерно так int e = 0129612;
но это не дает никакой ошибки, если я просто не использую 0 в первую очередь.
KarstenK
Языковое соглашение C++ гласит, что начало с "0" - это октетное число. Сравните с "0x", который является шестнадцатеричным. :-O