good.open("goods.txt");
for(int i=0;i<ii;i++){
good >> goods[i];
}
cout << goods[0];
ситуация следующая, в файле находится 3 слова. ii - переменная содержащая число 3 (good переменная типа fstream(если важно)), goods - string. Этот код должен поместить в переменную goods слова из файла и затем вывести их, но он помещает в переменную только 3 символа из первого слова, затем выводит только 1 символ. Помогите пожалуйста решить проблему, чтоб выводились слова, а не символы. Спасибо
Для этого goods должно быть массивом строк.
И - вы точно знаете это ii? Я бы делал так:
vector<string> goods;
for(string s; good >> s; goods.push_back(s));
Так вы получаете массив слов. естественно, выводить его как одну строку - не получится, выводите пословно:
for(const auto& s: goods) cout << s << " ";
Сборка персонального компьютера от Artline: умный выбор для современных пользователей