无法再正确读取文本文件
cannot read the text file properly anymore
好吧,基本上这是我的程序,它读取文本文件并将其放置在数组中,最后我打印出了该数组中的所有内容。该程序运行良好,并在几天内产生了正确的结果。但是,它今天才停止工作。例如,文本文件是
88
687
472
671
但是在程序完成后,输出为 0 1073741824 0 1073741824。 我不知道发生了什么,我唯一一次对 bash 进行一些更改是 ulimit -s 无限。知道吗?
int main(int argc, char *argv[])
{
ifstream file(argv[1]);
int placeholder;
int size = pow(2,atoi(argv[2]));
int array[size];
int index = 0;
while (file >> placeholder)
{
array[index]=placeholder;
index++;
}
for(int i = 0; i<size; i++)
{
cout<<array[i]<<endl;
}
return 0;
}
您确定程序可以读取您的文本文件吗?如果输入文件不存在,程序仍将尝试从不包含任何元素的array
中打印argv[2]**2
条目!该程序最终转储垃圾值。
我也不确定你为什么要做pow
调用 - 为什么不从argv[2]
那里获取元素的数量?
此外,当您可以使用C++ stringstream
进行转换时,您可以使用一些c函数(atoi
)。
当我使用您提供的输入运行您的代码时,如下所示:./a.out file.txt 2
,它会按预期打印 4 个数字。当我这样做时:./a.out does_not_exist.txt 2
,它会打印 4 个垃圾值并将它们转储到屏幕上。
相关文章:
- 将从格式化文本文件读取的文本数据存储到链表
- 读取字符串文本输入以创建 2D 矢量
- 需要从存档中读取一行文本.txt直到找到"hhh",然后转到下一行
- 反转从控制台读取的文本
- 高效读取 3MB 文本文件,包括解析
- C++程序在 freopen 中读取大文本后停止工作
- C++忽略使用字符串流进行读取的文本文件中的空白
- 读取大量文本/文本文件的更快方法?
- 使用 std::ifstream 读取 ASCII 文本文件C++
- 如何读取从文本文件到几个数组的不同类型的数据?C
- 使用标准C++无线流读取UTF-8文本并转换为UTF-16
- 从二进制文件中抓取文本时,为什么 xdg_vtnr=8 是我的结果
- 视觉读取列文本数据并在C++中放入 3D 数组
- C++在同一函数中读取各种文本文件
- 从进程内存中读取的文本块中丢弃解析的行
- 读取长文本文件时程序崩溃 - "*.exe has stopped working"
- IO:从一个C++程序和另一个Java程序同时写入和读取同一个文本文件
- OpenCV,在显示图像时读取用户文本输入(使用 waitKey)
- 如何逐行枚举从文件中读取的文本,并找到 C 中字符和单词最多的行
- P/Invoke in ASP.NET (从 dll 读取/写入文本文件)