scanf 引起的内存泄露

本文详细介绍了在将VC6下运行良好的代码移植到VS2013环境中时遇到的Run-TimeCheckFailure#2错误,并通过修改代码解决了该问题。具体分析了错误原因及解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

VC6下好好的代码放到2013 程序里面一直报错,提示Run-Time Check Failure #2 - Stack around the variable 'wRegAddr' was corrupted.

检查发现出现错误的地方代码如下:

WORD wRegAddr = 0, wRegData = 0;

sscanf(buff,"%x%x",&wRegAddr,&wRegData)

这里buff里面的内容类似:0x001a 0x2a  。

这些代码原本在VC6下一直运行的很好,现在放到vs2013里面运行时就有问题。 why?

经过查找发现great在这里已有描述http://hi.baidu.com/wei284375564/item/68dcd820c182a30973863e2e,于是修改如下:

sscanf(buff,"%hx%hx",&wRegAddr,&wRegData)

运行OK.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值