G-факт 16

Опубликовано: 17 Февраля, 2022

Predict the output of following program.

#include <stdio.h>
int main() 
{
   int x = 012;
   printf("%d",  x);
   getchar();
   return 0;
}

Программа печатает 10. Если поставить 0 перед целочисленной константой, это будет восьмеричное число, а если поставить 0x (или 0X), то получится шестнадцатеричное число. Легко поставить 0 случайно или по привычке. Ошибка очень часто встречается у новичков.

Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по теме, обсужденной выше.