通过文本文件发送字符串和 int 以运行
Sending a String and Int to Function via Text File
我正在尝试读取每行都有名称和年龄的文本文件,例如
Tom
55
Bob
12
Tim
66
然后我需要将其传递给一个函数,该函数接受字符串和整数,例如:
sortDLL.Insert(name, age);
但是,我不确定如何做到这一点。 我用以下内容对其进行了测试,它可以工作(绕过文本文件):
string tom = "tom";
string bob = "bob";
string tim = "tim";
int a = 55;
int b = 12;
int c = 66;
sortDLL.Insert(tom, a);
sortDLL.Insert(bob, b);
sortDLL.Insert(tim, c);
但是当我尝试读取文本文件并发送它时,程序无法正常运行。 这就是我目前正在尝试的,我已经搞砸了其他一些事情,但没有运气:
ifstream infile ("names.txt");
while(getline(infile, line));
{
istringstream ss(line);
if (ss >> name)
cin >> name;
else if (ss >> wt)
cin >> wt;
sortDLL.Insert(name, wt);
}
infile.close();
像往常一样,任何帮助使其工作将不胜感激,谢谢!
我认为正确的代码应该是这样的。请记住,您必须每 1 个插入片段读取 2 行。
while(getline(infile, line))
{
stringstream ss(line);
ss >> wt;
if(ss.fail()) {
name = line;
continue;
}
else {
// cout << name << ":" << wt << endl;
sortDLL.Insert(name, wt);
}
}
相关文章:
- 运行时错误:引用绑定到类型为"int"的空指针
- 运行时错误:引用绑定到类型"int"的未对齐地址0xbebebebebebebec6,这需要 4 个字节对齐 (stl_vector.h)
- 运行时错误:有符号整数溢出:964632435 * 10 无法在类型 'int' 中表示
- 参数包推导不一致 int 和 int& 在可变参数模板化成员函数中创建运行成员函数的线程
- 我的 c++ 程序不打印任何字符,但是如果我将它们更改为 int,代码可以完美运行
- 野牛:如何修复这个"参数太多而无法运行'int yylex()'错误?
- 关于运行良好的堆栈RPN程序上的char/int
- 如何使用int main(int argc,char*argv[])运行c++proram
- 运行-C++时读取常量int的值
- 通过文本文件发送字符串和 int 以运行
- JNIC++:使用netbeans,为什么我的程序即使调用System.exit(int)仍在运行
- 函数从字符串转换为int时出现运行时错误
- 运行时向量<int>STATUS_ACCESS_VIOLATION
- 返回一个带有 "return std::set<int>()" 的空集 - 为什么它会运行?
- int[n][m],其中n和m在运行时是已知的
- 在将字符串转换为int数组时,在putty上运行程序会遇到麻烦
- 在int main函数中编译并运行的循环在放入单独的函数时不会编译
- C/ c++: do内置对象,如' int ' ' double '在程序运行期间始终保持在内存中的确切位置
- 递归C++中int值不递增的运行时错误
- 使用int作为直到运行时才知道的模板形参