问题描述:
int a[1024*1024];
- 程序会运行失败并没有报错信息,原因是栈溢出导致了异常,且这个问题不是很好排查
解决方案一:
int *a = (int *)malloc(sizeof(int)*1024*1024);
解决方案二:
*使用cmake修改编译器栈空间大小,在CMakeLists.txt添加下面两行
MATH(EXPR stack_size "100*1024*1024")
set(CMAKE_EXE_LINKER_FLAGS "-Wl,--stack,${stack_size}")
*在VS的属性页修改