使用VS2005以上版本(VS2005、VS2008、VS2010)编译在其他编译器下正常通过的C语言程序,你可能会遇到类似如下的警告提示:
 引用内容
      warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1>          c:/program files/microsoft visual studio 10.0/vc/include/string.h(105) : 参见“strcpy”的声明
         warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1>          c:/program files/microsoft visual studio 10.0/vc/include/stdio.h(234) : 参见“fopen”的声明
        原因解释
        这种微软的警告,主要因为那些C库的函数,很多函数内部是不进行参数检测的(包括越界类的),微软担心使用这些会造成内存异常,所以就改写了同样功能的函数,改写了的函数进行了参数的检测,使用这些新的函数会更安全和便捷。关于这些改写的函数你不用专门去记忆,因为编译器对于每个函数在给出警告时,都会告诉你相应的安全函数,查看警告信息就可以获知,在使用时也再查看一下MSDN详细了解。库函数改写例子:
        mkdir改写为 _mkdir 
        fopen”改写为 fopen_s 
        stricmp改写为 stricmp_s
        strcpy改写为strcpy_s
        解决方案:
       1> 根据下面的warning提示:参见“fopen”的声明
        消息:“This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.”
        所以可以将函数按warning提示的第二句,改为使用fopen_s函数即可:
        例如:FILE *pFile=fopen("1.txt", "w");
           改为:
           FILE* pFile;
           fopen_s(&pFile, "1.txt", "w"); 
2> 还是根据warning提示的地三句话:use _CRT_SECURE_NO_DEPRECATE
        项目|属性|配置属性|C/C++|命令行|附加选项,加入【/D "_CRT_SECURE_NO_DEPRECATE" 】(注:加入中括号中完整的内容)
3> 降低警告级别:项目|属性|配置属性|C/C++|常规,自己根据情况降低警告级别(此法不推荐)
    注意:高度重视警告:使用编译器的最高警告级别。应该要求构建是干净利落的(没有警告)。理解所有警告。通过 修改代码而不是降低警告级别来排除警告。
    编译器是你的朋友。如果它对某个构造发出警告,这经常是说明你的代码中存在潜在的问题。成功的构建应该是无声无息的(没有警告的)。【《C++编程规 范》】

warning C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead.相关推荐

  1. error C4996: 'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead.

            今天编写C++程序在使用头文件#include<cstring>中的strcpy()和strcat()函数时出现了一个错误:error C4996: 'strcpy': T ...

  2. error C4996: ‘strcpy‘: This function or variable may be unsafe. Consider using strcpy_s instead.

    Hello,everyone! 我是鲁班·,一个热衷于科研和软开的胖子! 出现这个错误时,是因为strcpy函数不安全造成的溢出. 解决方法是:找到[项目属性],点击[C++]里的[预处理器],对[预 ...

  3. warning C4996: 'fopen': This function or variable may be unsafe.(_CRT_SECURE_NO_WARNINGS)

    在 windows 平台下的 visual studio IDE,使用 fopen 等 CRT 函数(C runtime library(part of the C standard library) ...

  4. 警告 1 warning C4996: ‘scanf‘: This function or variable may be unsafe.

    警告 1 warning C4996: 'scanf': This function or variable may be unsafe. 下午教妹妹学习C语言的过程中使用scanf函数出现了一个警告 ...

  5. 解决VS2017中出现'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead这问题

    当运行C++程序时,出现下面错误: 1>------ Build started: Project: Windows 编程, Configuration: Debug Win32 ------ ...

  6. 警告 1 warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead

    很多涉及字符串的函数是不检查越界的, 不安全. 所以后来有一套新的安全函数替代这个, 第一个warning就是建议你用 scanf_s代替scanf第二个 warning是说你用的 getch()没定 ...

  7. C4996:'strcpy': This function or variable may be unsafe. Consider using strcpy_s instead.

    使用C语言中字符串的处理函数提示错误 *需包含头文件"string.h" #include "string.h" 以strcpy函数为例 原型:strcpy(s ...

  8. c语言itoa error C4996,warning C4996: 'XXXX': This function or variable ma

    [VC]warning C4996: 'XXXX': This function or variable may be unsafe. 关于VS系列使用 Unicode 格式产生以上警告: warni ...

  9. 解决VS2013中出现类似于error C4996: 'scanf': This function or variable may be unsafe的安全检查错误

    我用的是visual studio 2019,提示出错.用下面第5种办法,完美解决问题... ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...

最新文章

  1. java swing linux_Linux下关于解决JavaSwing中文乱码的情况
  2. (九)把一切放在一起:用深度伪造换脸
  3. python表单文件请求_python处理multipart/form-data的请求方法
  4. String方法汇总
  5. HTML5移动端手机网站开发流程
  6. sata和sas硬盘Linux,SAS硬盘与SATA硬盘的功能对比
  7. java 加背景颜色_Java 给PPT幻灯片添加背景颜色和背景图片
  8. 【小月电子】XILINX FPGA开发板(XLOGIC_V1)系统学习教程-LESSON9简易测试系统
  9. Photoshop2022全版本软件安装包(附图文教程、windows\mac系统全版本软件)
  10. 人工智能在减灾遥感中的应用
  11. uni-app 开发小程序,使用到u-charts.js时会出现弹框或下拉框部分与图标重叠的情况(还有在解决过程中出现 vasToTempFilePath: fail canvas is empty)
  12. 基于echarts 24种数据可视化展示,填充数据就可用,动手能力强的还可以DIY(演示地址+下载地址)
  13. numpy第三章-索引器、多级索引
  14. idea重装后打不开,点起来没反应(难受)
  15. win7下安装网络共享打印机 hp LaserJet 1010
  16. 形式逻辑(普通逻辑)6:复合判断
  17. fiddler使用过滤、打断点方法
  18. 如何解决谷歌浏览器不加载Adobe Flash Player的问题
  19. 亚马逊为什么能够成为创新力最强的公司
  20. 湖南云畅网络科技有限公司携手伙伴,共筑长三角数字经济产业新高地

热门文章

  1. mysql一些写常用命令
  2. 编译安装 apache 2.4.6
  3. 编码文件AndroidStudio初体验:解决Execution failed for task ':TestAndroid:compileDebug'.
  4. ActiviteX 服务控件
  5. queryList爬虫获取内容的几种方法总结 queryList给抓取的内容增加html追加元素html 代码实例...
  6. AntiSamy测试
  7. TSQLDBServerHttpApi使用工作线程池
  8. C# FileSystemWatcher 在监控文件夹和文件时的用法
  9. 找到你的位置(JS在页面中的位置)最常用的方式是在页面中head部分放置script元素,浏览器解析head部分就会执行这个代码,然后才解析页面的其余部分...
  10. WebBrowser 控件 内存溢出 补丁 From Microsoft