Я думаю, что это должно быть примерно так:
cin.getline(whatever);
cin.ignore(1, '\n');
Смотрите, когда вы читаете какой-то текст из stdin, конец строки определяется как \n
(по умолчанию).И когда вы нажимаете Return в окне консоли, этот символ пропускается, но он присутствует.Поэтому, когда вы пытаетесь прочитать следующую строку, она встречает ранее забыли \n
и завершает чтение, возвращая пустую строку.
Считайте это для получения подробной информации.