78人参与 • 2024-01-22 • 编程开发
由于一些传统c语言函数有一定的安全风险,微软在 visual studio 中不建议使用这些传统库函数,否则会提示c4996错误。
visual studio 建议采用带_s的函数,如 scanf_s、strcpy_s,但这些并不是标准c函数。
a、文件内添加抑制
1、关闭针对特定代码行的警告(作用于行)
在该行正上方,使用warningpragma:
#pragma warning(suppress : 4996)
2、在文件中关闭警告(作用于文件)
若要在文件中针对随后的所有内容关闭警告,在文件头部使用warningpragma:
#pragma warning(disable : 4996)
或者
根据编译器提示来使用宏定义:
在文件头部添加宏:#define _crt_secure_no_warnings
b、项目中添加抑制(作用于整个项目)
1、在命令行生成中关闭警告
使用/wd4996命令行选项。
2、使用全局宏定义
右键项目→属性→c/c++(预处理器)→下拉菜单→编辑
新建行,输入_crt_secure_no_warnings
3、关闭sdl检查
右键项目→属性→c/c++(常规)→sdl检查(把“是” 改成 “否”)
如果使用“文件内添加抑制”的方案,则可以修改文件模版,在模板中添加特定代码。
右键 visual studio 快捷方式(桌面没有找开始菜单)→ 右键(属性)→ 打开文件所在的位置
进入 vc→vcprojectitems 文件夹,你可以看到 newc++file.cpp,把他复制到桌面,修改,再剪切回去,即可修改vs中新建 cpp 文件的默认内容。
另外,你可以再编写一份 “源.c” 文件,同样复制到vcprojectitems 文件夹内,即可在“新建项目”窗口看到该文件。变相提供了 .c 文件的模板。
注意:
在 “紧凑视图” 里新建 “文件名.cpp” 文件,依旧可以应用之前通过修改newc++file.cpp 而修改的cpp文件模版。
而若以此方式新建 .c 文件,则不会应用 “源.c” 的内容。如若需要使用该 “模板”,请在完整的“添加新项” 视图里选择并新建该文件。
以上就是屏蔽visuastudio在c++项目中c4996错误的教程,希望大家喜欢,请继续关注代码网。
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论