解决vs运行时报C4996代码错误

简介: 在解决bug的路上越走越远。。。。

问题产生

今天偶然用vs运行一段C代码时,程序报错无法运行,系统找不到指定文件。

简单而言就是当前项目的Debug文件中找不到该项目的可执行文件.exe。

我先尝试打开了该项目的属性,查看了下该模式下所生成的可执行文件的位置,发现存在该文件路径啊。

然后我回到本地存储的路径,发现原来程序运行根本就没有生成.exe的可运行文件。那肯定找不到.exe运行文件啊。🤣🤣🤣

然后去看程序报错

问题原因

查资料后发现,问题产生原因:

由于微软在VS中不建议再使用C的传统库函数scanf,strcpy,sprintf等,所以直接使用这些库函数会提示C4996错误。
VS建议采用带_s的函数,如scanf_s、strcpy_s,但这些并不是标准C函数。

解决方案:

方案一:

首先找到自己的项目,右键项目,选择项目属性,将SDL检查关闭,如下图就行。

这样项目就可以直接运行了。

方案二:

添加宏定义

//这个宏定义最好要放到.c文件的第一行, 二选一即可
#define _CRT_SECURE_NO_WARNINGS
#pragma warning(disable:4996)

这样,程序也可以成功运行起来了。

程序员不是在去生产bug的路上,那就是在去解决bug的路上。🤣🤣🤣🤣

目录
相关文章
运行PaddleDetection报错问题
PaddleDetection没有找到文件解决
|
编译器 C语言
C程序调试过程常见的错误
在C语言编程,一般需要借助C相关的编译软件,例如,在Keil uVision5编程环境下,如果提示工具连接错误,则表示MDK安装程序有问题,重新卸载,并全部删除后重新再进行安装后即可。
|
API
处理应用代码中的错误
处理应用代码中的错误
88 0
|
Java
命令行下运行JAVA出错:错误的签名:
命令行下运行JAVA出错:错误的签名:
89 0
|
异构计算
之前代码出现的错误总结
之前代码出现的错误总结
128 0
|
前端开发 Java 应用服务中间件
|
小程序 Android开发
排查指南 | 当 mPaaS 小程序提示“应用更新错误(1001)”时
APP 启动 mPaaS 小程序弹出 toast 信息:"应用更新错误"。
3635 0
排查指南 | 当 mPaaS 小程序提示“应用更新错误(1001)”时

热门文章

最新文章