VS2010中解决Stack overflow问题的关键

      编写了一个规约转换的小程序,重定义了几个局部变量,如GSP_HistorySelectCmd_Bay_Resp(头文件中定义的一个数据结构) Bay,用Bay来替代全局变量g_gsp_protocol_resp.history_select_cmd_bay_resp在函数某一部分中使用,编译时频繁报错,error显示的是stack overflow。

      采用#if 0...#endif 定位了这一段的出错位置为定义的这一句(GSP_HistorySelectCmd_Bay_Resp Bay),尝试换了几个其他的数据来充当temp中间量的角色,发现变量大小与报错有关:定义的局部变量大小过大时会出错,若很小则不会。通过在工程属性中参照下面界面对堆栈保留大小值进行修改,修改保留大小为一个很大的值,错误消除,程序编译运行成功。

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试