Это то, что у меня есть до сих пор. Я пытаюсь редактировать динамически выделенный массив на C++, однако, когда цикл for работает, он пропускает первый элемент. Мне нужно это, чтобы получить все предметы. Любая помощь приветствуется. Заранее спасибо.Динамическое распределение строковых массивов
#include <iostream>
#include <algorithm>
#include <string>
#include <iomanip>
using namespace std;
int main()
{
// Declare Variables
int userChoice = 0;
int numItems = 0;
cout << "How many items will be on your list? ";
cin >> numItems;
string *list = new string[numItems];
// Give the user some options
cout << "1. Add Item" << endl;
cout << "2. Remove Item" << endl;
cout << "3. Sort Items" << endl;
cout << "4. Exit" << endl;
cout << "Enter the number of the operation you wish to perform: ";
cin >> userChoice;
cout << endl;
// Perform the operation
switch(userChoice)
{
case 1:
{
cin.clear(); // Remove new line from cin
for(int i = 0; i < numItems; i++)
{
cout << "Item #" << i + 1 << " --> ";
getline(cin, list[i]);
}
}
break;
case 2:
{
}
break;
case 3:
{
}
break;
case 4:
{
return 0;
}
default:
{
cout << "Error! Invalid Selection" << endl;
}
}
// Output the list
cout << "-------Items-------" << endl
<< *list << endl << endl;
// free memory
delete [] list;
cout << "Enter the number of the operation you wish to perform: ";
cin >> userChoice;
return 0;
}
Это замечательно, и я бы это сделал, но я, вероятно, должен был быть более конкретным в своем первоначальном описании. В описании проекта явно указано, что я не могу использовать стандартные контейнеры, функции сортировки или интеллектуальные указатели. – bradym55
Или 'qsort' считается функцией сортировки? Пфф. Как вы можете сортировать, не используя функцию сортировки? Напишите свой собственный? Тогда он становится функцией сортировки. –