vs怎么屏蔽代码 屏蔽VisuaStudio在C++项目中C4996错误的教程


    由于一些传统C语言函数有一定的安全风险,微软在 Visual Studio 中不建议使用这些传统库函数,否则会提示C4996错误。
    
    Visual Studio 建议采用带_s的函数,如 scanf_sstrcpy_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” 的内容。如若需要使用该 “模板”,请在完整的“添加新项” 视图里选择并新建该文件。