[问题] 单支程式malloc上限

楼主: qoojordon (颖川琦)   2015-05-09 02:06:06
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
CentOS 5.9
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
No
问题(Question):
主要为附带的程式码网页 line 268~273 出错
buildGraph()为参考输入的文字档后 , 动态要求内存空间 ,
并给予资料结构初值 , POINT_NUM1的size很大 , 此例值为14128
目前猜测是单一程式能要求的内存空间有限制
喂入的资料(Input):
两个约500K的文字档
预期的正确结果(Expected Output):
line 268~273 能正确的对 h1指标的每一个item初始化
错误结果(Wrong Output):
line 268~273 在i=13140 时发生 Segmentation Fault
程式码(Code):(请善用置底文网页, 记得排版)
http://ideone.com/eNFva5
补充说明(Supplement):
h1指标和 和 line 256~264的pointG1指标是用相同的观念去建构的 ,
上面的loop能顺利跑完 , 因此排除是结构的指标使用错误
作者: scwg ( )   2015-05-09 03:44:00
POINT_NUM1 的 macro 定义加上括号:唔, 慢了. 不过建议置底的第九戒加入最外围也最好加括号
作者: azureblaze (AzureBlaze)   2015-05-09 11:38:00
或者不要用#define来做这种事 用const就好了
作者: chchwy (mat)   2015-05-09 23:58:00
就要这么一丁点空间 离限制还差得远吧XDDD
作者: dirkc (3781615)   2015-05-16 23:17:00
malloc的上限通常是user address space的大小减去其他

Links booklink

Contact Us: admin [ a t ] ucptt.com