runtime error原因及解決方案:
屬於運行時錯誤,當程序運行到壹半,程序發生崩潰。
1、數組過小。
2、除數為零。
3、大數組定義在函數內。
4、指針越界。
5、還有可能是程序拋出了未接收的異常。
原因:
數組過小,導致程序訪問到數組外的內存區域。
解決方案:
適當增大數組容量。
原因:
除數為零,發生除零錯誤。
解決方案:
若可能存在除數為零,需對除數數值進行判斷。
原因:
大數組定義在函數內,導致程序棧區耗盡。
解決方案:
1、將大數組定義在函數體外,使用程序堆空間。
在Windows下,棧的大小是2MB。而申請堆空間的大小壹般小於2GB,由於程序棧區空間遠小於堆區空間,因此將大數組定義在函數外,不易導致程序堆區耗盡。
2、更改棧大小。
link(鏈接)時用/STACK指定它的大小,或者在.def中使用STACKSIZE指定它的大小。
使用控制臺命令“EDITBIN”更改exe的棧空間大小。
Linux默認棧空間的大小為8MB,通過命令ulimit -s來設置。