плоды струны [200];
Как я могу ввести строку в массив?
Example:
My mom has apples;
So , fruits array will contain:
fruits[0] = "My";
fruits[1] = "mom";
..........etc.
Как я могу это сделать?
Если вы читаете со стандартного ввода:
int i = 0;
for (string word; cin >> word; i++)
names[i] = word;
Если вы читаете из string
использовать istringstream
вместо.
Если вы хотите использовать стандартную библиотеку C ++ в полной мере, используйте входные итераторы и vector<string>
вместо массива:
vector<string> words;
back_insert_iterator< vector<string> > back_iter (words);
istream_iterator<string> eos;
istream_iterator<string> iit (cin);
copy (iit, eos, back_iter);
С помощью vector<string>
устраняет проблему, связанную с необходимостью угадать, сколько слов будет введено, и с последствиями неправильного предположения.
Самое компактное решение:
vector<string> words;
copy(istream_iterator<string>(cin),
istream_iterator<string>(),
back_inserter(words));
Это решение @ dasblinkenlight, написанное с использованием временных переменных.