现象:程序报段异常
原因:数组太长,因为数组变量时存放在栈中,而栈的大小是有限制的,一般为1M、2M,所以数组太大的话会造成栈溢出,报段异常错误。
解决方法:将大变量存放在堆上。
案例:
char myarray[9999999];//error
char *pmyarray;
pmyarray = new char[9999999];//ok,new出来的对象存放在heap上
delete [] pmyarray;//必须显示的delete指针,而且不能忘记中间的空中括号