Таким образом, когда выполнение пересекает определение переменной, обычно ничего не нужно делать, ни одной инструкции. С другой стороны, это оставляет значение этой переменной тем, что было найдено ранее. Таким образом, важность инициализации в известное состояние, как вы сделали в своем примере с

у следующий код выводит одну и ту же ячейку памяти каждый раз?

int x;
for (x = 0; x < 10; x++) {
    int y = 10;
    printf("%p\n", &y);
}

Я думал, что область памяти должна меняться, так как каждый раз при запуске цикла for переменная является новой.

Ответы на вопрос(4)

Ваш ответ на вопрос