我正在尝试使该程序要求用户输入文本文件的名称并让它显示文本文件中的结果。当我运行这个程序时,它在识别文本文件的意义上有些成功,但它会输出奇怪的结果。例如,我试图让它输出包含以下内容的某个文件的内容:
SELECT *
FROM OpenQuery(PRONTO_L01, 'SELECT
gl_trans.gl_accountcode,
gl_trans.gl_amount,
gl_trans.gl_trans_date ,
gl_trans.gl_details
FROM gl_trans
WHERE gl_trans.gl_amount <> 0')
但它只输出:
10 5 70
5 15 85
12 9 75
10 6 60
20 10 100
15 8 95
4 3 35
20 10 200
9 5 65
到达文件结尾
我真的很喜欢c ++,但我一直在努力弄清楚为什么我的程序不起作用,这只是最终程序的一小部分。谢谢!
0 0 0
答案 0 :(得分:1)
首先,while(!inputFile.eof())
不是一个好主意。更多关于here。
此外,您根本没有更改firstMinute
,secondMinute
和numOfDishes
的值。你忘记在循环中这样做了吗?
我会简单地使用提取运算符而不是getline()
,如下所示:
while(inputFile >> firstMinute >> secondMinute >> numOfDishes) //not checking for eof
{
cout << firstMinute << ' ' << secondMinute << ' ' << numOfDishes << '\n';
}