VS:error C4703-使用了可能未初始化的本地指针变量“XXX”

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sss_369/article/details/84190822

1. 问题

在用VS2013中编译一个开源库是遇到以下错误:

error C4703: 使用了可能未初始化的本地指针变量“xxx”

2. 分析

VS2013创建项目,会默认勾选安全开发生命周期(SDL)检查,

其功能是更好的监管开发者的代码安全,如果勾选这一项,那么编译时将严格按照SDL的规则编译代码,

导致,会有一些以前常用的函数无法通过编译,比如在VS2010中的scanf是warning那么在VS2013中就是error了。

3. 解决方法

关闭SDL检查:

项目属性->配置属性->C/C++->SDL检查,选测是或者否。

此时选择”否”,则上面的那个错误就不会出现了。

或者将指针变量初始化为nullptr,也可以解决。

参考文章

1. https://blog.csdn.net/sinat_20265495/article/details/62056034

猜你喜欢

转载自blog.csdn.net/sss_369/article/details/84190822
今日推荐