Что это значит, когда числовая константа в C / C ++ имеет префикс 0?

Хорошо ... Итак, у меня возникла глупая идея, и я попытался поместить значение 0123 в int, просто интересно посмотреть, что произойдет, я предположил, что когда я напечатал значение, я получу 123, но вместо этого я получил 83 ... Есть идеи, почему? Что происходит внутри компилятора / памяти, из-за чего это значение становится 83?

Я пробовал это на C ++ и C с компилятором GCC, а также пробовал с float, который дал те же результаты.

8
задан Rob Kennedy 15 June 2011 в 19:04
поделиться