<分区>
我有一个程序可以读取一组输入文件(每个大约 130MB)并执行一些数据搜索。该程序必须多次读取所有输入文件。读取由循环执行。一切正常,直到循环到达第 17 次迭代。然后出现如下信息(vvfield为主程序名):
vvfield(13053) malloc: *** error for object 0x100100301: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap
循环可以执行少于 17 次,并且工作完美,但是如果循环执行超过 17 次,则会出现消息。主要问题是程序应该执行循环超过 200 次
不知道一个文件的读取次数有没有限制
输入文件在一个独立的函数中打开、关闭和清除,每个输入文件从开始读取到某个点(点是可变的,但有时可以是文件的结尾)。
我正在使用 g++ 进行编译,并在 Mac OS Snow Leopard 10.6.7 上工作
有人知道会发生什么吗?
提前致谢!