NFANODEALL 变量周围的堆栈损坏 把“project->配置属性->c/c++->代码生成->基本运行时检查” 改为默认就没有这个错误了
关于基本运行检查 搜索了一些内容
一般是由于数组越界或者是 其他情况 对于 未申请的堆栈进行了操作
如果我进行运行时检查 检查方式是
我开辟了一个 大小为len 的int 型数组 int array[10];
除了所必要分配的4*len字节的空间外 额外开辟8个连续字节并以0xcc填充
当数组越界 array[10]=0;
系统会assert 运行时报出可能越界的错误
如果对array[11]=0 或者data[0x10] = 0xcccccccc;
并不会出现报错; 实际上就是对于 a[10] 是否为0xcc的一个数组越界的检查。
另外一个是对于未初始化变量作为右值赋值的检查
void foo()
{
int data1,data2;
data1=data2;
}
会出现warning
_________
而当data2作为非局部变量
int data2;
void foo()
{
int data1,data2;
data1=data2;
}
并不会出现waring