си если все неинициализированных переменные зануляются в секции bss??
В .bss лежат глобальные переменные и static. Мусор в локальных, они выделяются на стеке, и туда действительно попадает то, что лежит в стеке. Специально их компилятор не очищает.
Bss - глобальные неинициализированные же
Ну так это в теории. Но в любом случае, даже если на какой-то платформе так будет, тогда кто-то должен эти переменные обнулить, потому что стандарт гарантирует, что они инициализируются нулём.
благодарю
От того что эти переменные объявляются на стеке, если речь, конечно, про локальные переменные
.bss это просто виртуальная секция не содержащая никакой инфы, кроме её размера, при загрузке, загрузчик выделяет под неё место и затирает нулями (или это делает рантайм, ибо для глобальных переменных гарантированна инициализация нулём)
Обсуждают сегодня