То есть после окончания строки все остальные члены массива заполняются
Код:
'\0'
?
Нет, они изначально были ими заполнены. Потому что вы-то ничего туда не записали. Значит, записывается автоматически. Причём будьте осторожны: иногда происходит заполнение нулём, а иногда - остаётся мусор от предыдущих использований памяти. Это зависит от размещения переменной, но новичку лучше вообще ни на что не полагаться, а привыкнуть инициализировать всё всегда.
В обсуждаемом варианте с типом
string строка
включает в себя инициализацию (пустой строкой), поскольку в нём предусмотрен для этого соответствующий метод -
конструктор по умолчанию - и он "чистит мусор", чтобы в объекте не оказалось ерунды, приводящей к непонятным ошибкам.