最近用vc2005调一个别人的程序,编译链接都没有问题,可是一运行就出现了如题所示的runtime错误,可是我之前在vc6下运行可以通过。
我在网上搜了一圈,原来是变量 s 出现了问题。在原来的vc6里,运行时并不对数组越界访问做出任何提示,然而vc2005变的更严格,虽然编译链接都能通过,但是运行时会检查边界问题。如果出现越界访问就会出现如题所示的运行时错误。
在我调试的程序中,s是一个局部变量数组s[4], 对s[4]进行了赋值,产生错误。不过还有个疑问是,为什么赋值时没有提示错误而是在程序返回s变量所在的函数时出错呢?
。。。
阅读(669) | 评论(0) | 转发(0) |