vec_c[0]
возвращает пустое значение std::vector<int>
. Следовательно, vec[0][0]
недопустимо.
Причина, по которой ваш первый пример не потерпел неудачу, заключается в том, что:
for(int j = 0; j < vec_c[i].size(); j++){
проверяет размер vec_c[0]
, который равен 0, поэтому У l oop нет фактических итераций.