Всем доброго времени суток. Вот такой вопрос:
cout << "Введите количество строк, которые хотите ввести -> ";
cin >> m;
for (int i = 0; i < m; i++)
{
cout << "Введите строку -> ";
cin.ignore();
gets_s(str);
pptr = ADDstr(pptr, sz, str);
sz++;
}
SHOWstr(pptr, sz);
Программка запрашивает строки у пользователя и потом выводит, после второй итерации цикла у строк пропадает первый символ, теряет его функция gets_s(), но побороть это у меня пока не вышло. Не подскажите как решить эту проблему?
Функция gets_s вызывается с двумя параметрами. Но это неважно, потому что, вообще говоря, порочен сам подход - смешивать С++ и С. Почему бы вам не воспользоваться соответствующими функциями getline?
А если уж так хочется смеси французского с нижегородским - то cin.ignore() нужно вызвать один раз, сразу после cin >> m;.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей