C 语言

关注公众号 jb51net

关闭
首页 > 软件编程 > C 语言 > vs报C4996错误

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

作者:天马行空的程序猿

C4996错误的意思:是VS觉得strcpy这函数不安全,建议你使更安全的函数,那么如何解决呢,本文主要介绍了vs运行时报C4996代码错误的问题解决,感兴趣的可以了解一下

问题产生

今天偶然用vs运行一段C代码时,程序报错无法运行,系统找不到指定文件。
简单而言就是当前项目的Debug文件中找不到该项目的可执行文件.exe。

image.png

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

image.png

image.png

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

然后去看程序报错

image.png

问题原因

查资料后发现,问题产生原因:
由于微软在VS中不建议再使用C的传统库函数scanf,strcpy,sprintf等,所以直接使用这些库函数会提示C4996错误。
VS建议采用带_s的函数,如scanf_s、strcpy_s,但这些并不是标准C函数。

解决方案:

方案一:

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

image.png

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

方案二:

添加宏定义

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

image.png

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

到此这篇关于vs运行时报C4996代码错误的问题解决的文章就介绍到这了,更多相关vs运行时报C4996错误内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文