Определение vector<char> a;
инициализирует a
пустым вектором.Таким образом, его размер равен 0.
Во время первой итерации внешнего цикла (i
) внутренний цикл for(int j=0;j<a.size();j++) {
поэтому никогда не выполняется и a[j]
не оценивается.Код просто следует прямо к проверке if(f==0)
и, основываясь на этом, добавляет что-то к вектору a
.Будущие итерации внешнего цикла работают с непустым a
и могут посмотреть на него.
Вы можете легко наблюдать это самостоятельно, проходя программу в отладчике, чтобы точно увидеть, в каком направлении течет управлениечерез код.