C++ 访问C+中的向量+;
我编写了一个简单的程序,可以访问名为“input.txt”的文件,并将其内容推送到字符串类型的向量中C++ 访问C+中的向量+;,c++,vector,C++,Vector,我编写了一个简单的程序,可以访问名为“input.txt”的文件,并将其内容推送到字符串类型的向量中 #include <iostream> #include <vector> #include <fstream> using namespace std; int main() { fstream input; input.open("input.txt"); string s; input >> s;
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
int main()
{
fstream input;
input.open("input.txt");
string s;
input >> s;
while (!input.eof())
{
cout << s <<endl;
input >> s;
vector<string> v;
v.push_back(s);
}
input.close();
}
#包括
#包括
#包括
使用名称空间std;
int main()
{
流输入;
input.open(“input.txt”);
字符串s;
输入>>s;
而(!input.eof())
{
cout是的,您可以迭代字符串向量的内容,将值转换为整数或浮点值并求和。是的,您可以迭代字符串向量的内容,将值转换为整数或浮点值并求和。对于初学者,这里有一个更简洁的版本对于您刚刚编写的代码:
ifstream input("input.txt");
string s;
while (input >> s) {
cout << s << endl;
vector<string> elems;
elems.push_back(s);
}
最后,如果要循环使用向量的元素
将它们添加到一起,则可能不希望将文件作为字符串读取,而是作为int
s或double
s读取。这样可以省去以后转换值的麻烦。例如:
ifstream input("input.txt");
vector<double> elems;
double s;
while (input >> s) {
cout << s << endl;
elems.push_back(s);
}
希望这有帮助!对于初学者,这里是您刚刚编写的代码的更简洁版本:
ifstream input("input.txt");
string s;
while (input >> s) {
cout << s << endl;
vector<string> elems;
elems.push_back(s);
}
最后,如果要循环使用向量的元素
将它们添加到一起,则可能不希望将文件作为字符串读取,而是作为int
s或double
s读取。这样可以省去以后转换值的麻烦。例如:
ifstream input("input.txt");
vector<double> elems;
double s;
while (input >> s) {
cout << s << endl;
elems.push_back(s);
}
希望这有帮助!您的程序不正确。您的意思可能是:
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
int main()
{
ifstream input("input.txt");
string s;
vector<string> v;
while (input >> s)
{
cout << s <<endl;
v.push_back(s);
}
}
#包括
#包括
#包括
使用名称空间std;
int main()
{
ifstream输入(“input.txt”);
字符串s;
向量v;
while(输入>>s)
{
cout您的程序不正确。您可能的意思是:
#include <iostream>
#include <vector>
#include <fstream>
using namespace std;
int main()
{
ifstream input("input.txt");
string s;
vector<string> v;
while (input >> s)
{
cout << s <<endl;
v.push_back(s);
}
}
#包括
#包括
#包括
使用名称空间std;
int main()
{
ifstream输入(“input.txt”);
字符串s;
向量v;
while(输入>>s)
{
cout您的代码不正确。特别是循环。请参见此以了解循环错误的原因:字符串的“和”是什么意思?您的代码不正确。尤其是循环。请参见此以了解循环错误的原因:“和”是什么意思字符串?感谢您帮助我完成并运行我的代码,我现在就要尝试这个。感谢您帮助我完成并运行我的代码,我现在就要尝试这个。
#include<algorithm>
#include<iterator>
#include<fstream>
#include<string>
struct ShowAndCopy {
const std::string& operator()(const std::string& s) const {
std::cout << s;
return s;
}
};
int main()
{
std::ifstream input("input.txt");
std::vector<std::string> v;
std::transform(std::istream_iterator<std::string>(input),
std::istream_iterator<std::string>(),
std::back_inserter(v),
ShowAndCopy());
return 0;
}