Доступна функция ignore
:
std::cin << val1;
std::cin.ignore (9999, ' ');
std::cin << val3;
Первый аргумент определяет количество пропускаемых символов, второй параметр - разделитель, к которому следует пропустить пропуск.
Вы можете обернуть это в пользовательский манипулятор, так как это ужасно.
Вот пользовательский манипулятор:
template <class charT, class traits>
inline std::basic_istream<charT, traits> &
ignoreToken (std::basic_istream<charT, traits> &strm)
{
strm.ignore (9999, ' ');
return strm;
}
И вы можете использовать это так:
cin >> val1 >> ignoreToken >> val3 >> ignoreToken >> val5;
(ps - я не скомпилировал это, так что может быть опечатка).