Run-Time Check Failure #2 - Stack around the variable 'temp' was corrupted.错误的产生和分析
2016-11-29 17:36
666 查看
今天在写分析HEVC数据的小程序,编译正常,运行时产生了如下错误:
大意就是变量temp周围的内存被污染了,冲内存了。
其中temp是我定义的一个变量,类型为unsigned char,我用fscanf函数从文件中读取了一个数值(范围在0~255之间)。
fscanf(iRe,"%02x",&temp);
反复调试后,才明白了原因,原来在调用fscanf时,以temp地址为首的32bit都会被写,只有低8bit有效(等于读入的数),其他24bit为0,。
这样的话,这24bit数据就被改写了。
将temp的类型改为int后,该错误就消失了。
大意就是变量temp周围的内存被污染了,冲内存了。
其中temp是我定义的一个变量,类型为unsigned char,我用fscanf函数从文件中读取了一个数值(范围在0~255之间)。
fscanf(iRe,"%02x",&temp);
反复调试后,才明白了原因,原来在调用fscanf时,以temp地址为首的32bit都会被写,只有低8bit有效(等于读入的数),其他24bit为0,。
这样的话,这24bit数据就被改写了。
将temp的类型改为int后,该错误就消失了。
相关文章推荐
- VS2008中Run-Time Check Failure #2 - Stack around the variable 'xxx' was corrupted 错误解决方法
- Run-Time Check Failure #2 - Stack around the variable ' record' was corrupted , 数组越界错误
- Run-Time Check Failure #2 - Stack around the variable 'var' was corrupted
- VS2008中Run-Time Check Failure #2 - Stack around the variable 'xxx' was corrupted 错误解决方法
- Run-Time Check Failure #2 - Stack around the variable 'usval' was corrupted
- Run-Time Check Failure #2 - Stack around the variable 'szNum' was corrupted
- Run-Time Check Failure #2 - Stack around the variable '***' was corrupted.
- Run-Time Check Failure #2 - Stack around the variable 'var' was corrupted
- Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted 解决方法
- run-time check failure,stack around the variable “ ” was corrupted
- Run-Time Check Failure #2 - Stack around the variable 'xxx' was corrupted
- Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted 解决方案
- 浅析vs2008中 Run-Time Check Failure #2 - Stack around the variable 'var' was corrupted
- Run-Time Check Failure #2 - Stack around the variable 'XX‘ was corrupted 解决方法
- VS2008中Run-Time Check Failure #2 - Stack around the variable 'xxx' was corrupted 错误解决方法
- 浅谈 Run-Time Check Failure #2 - Stack around the variable 'xxx' was corrupted 的解决方法
- 关于问题【Run-Time Check Failure #2 - Stack around the variable 'data' was corrupted.】
- Run-Time Check Failure #2 - Stack around the variable 'var' was corrupted
- Run-Time Check Failure #2 - Stack around the variable 'XXX' was corrupted
- Run-Time Check Failure #2 - Stack around the variable 'xxx' was corrupted.