Проблема в том, что ваш вектор имеет нулевой размер, и использование [] не сделает его больше.
Есть одна строка, которая делает то, что вы хотите.
vector<char> cveccin()
{
string cinval;
cin >> cinval;
return vector<char>(cinval.begin(), cinval.end());
}
Этот код создает вектор правильного размера, копирует в него строку cinval и возвращает ее из функции, все в одной строке. Разве C ++ не изумителен!