Запутанные проблемы с глобальной областью действия C ++

Я прохожу практический тест C ++ и меня смущает набор вопросов, связанных с областью доступа и точкой объявления. Оба вопроса связаны друг с другом ... Я знаю ответы ... мне нужно правильное объяснение:

Какое значение имеет локальная переменная x в конце main

 int x = 5;
 int main(int argc, char** argv)
 {
    int x = x;
    return 0;
 }

ans: Undefined

What значение y в конце main?

    const int x = 5;
    int main(int argc, char** argv)
    {
       int x[x];
       int y = sizeof(x) / sizeof(int);
       return 0;
    }

ответ: 5

5
задан maxpayne 3 December 2010 в 08:15
поделиться