有没有一种方法可以一次性将大文本文件(约60MB)读入内存中(例如编译器标志来增加程序内存限制)?目前,ofstream的open函数在尝试读取此文件时会抛出分段错误。
ifstream fis;
fis.open("my_large_file.txt"); // Segfaults here
文件只是由形式为行的行组成。
number_1<tabspace>number_2
即两个由制表符分隔的数字。
有没有一种方法可以一次性将大文本文件(约60MB)读入内存中(例如编译器标志来增加程序内存限制)?目前,ofstream的open函数在尝试读取此文件时会抛出分段错误。
ifstream fis;
fis.open("my_large_file.txt"); // Segfaults here
number_1<tabspace>number_2
你可能存在其他问题,因为仅仅调用open
并不能读取文件。我的猜测是该文件不存在(或者不在你认为的相对路径中)。