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

        使用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++编程规 范》】

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/255617.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

纠错——【Singleton array array(0.2) cannot be considered a valid collection.】

# 将数据集按照比例划分为训练集和测试集 def split_datas(datas,labels,random_state1,train_size0.9,test_size0.1):train_data, test_data, train_label, test_label sklearn.model_selection.train_test_split(datas,labels,random_staterandom_state,# 作用是通过随机数来…

Android Studio 模拟器 不要皮肤,效果更好

新建或者编辑虚拟机时,皮肤选择“No Skin”即可,第二张图片就是无皮肤的效果,看着更爽啊。 转载于:https://www.cnblogs.com/toSeeMyDream/p/6265501.html

SqlServer自定义排序

在实际项目中,有时会碰到数据库SQL的特殊排序需求,举几个例子,作为参考。 1、自定义优先级 一种常见的排序需求是指定某个字段取值的优先级,根据指定的优先级展示排序结果。比如如下表: Create TABLE Fruit (id INT ID…

JAVA 笔记(三)

NullPointerException:空指针异常 原因:数组已经不再指向堆内存了。而你还用数组名去访问元素。对于查找问题,如果找到就返回其索引值,如果找不到就要返回一个负数(一般是负一)这是必须的,否则如果找不到&a…

ERROR: SampleCB() - buffer sizes do not match 解决方法

笔记本有内置摄像头。Windows7驱动已经安装成功&#xff0c;利用QQ测试摄像头正常。但是利用OpenCV简单的摄像头操作后&#xff0c;就会出现ERROT: SampleCB() - buffer sizes do not match的问题。下面是代码&#xff1a; #include<iostream> #include <opencv2/co…

安装Wamp后 Apache无法启动的解决方法

安装Wamp后 Apache无法启动的解决方法&#xff0c;网上的解决方案可以说是五花八门&#xff0c;有些说了一大推&#xff0c;一点作用都起不到。 其实解决方法只需两步&#xff1a; 1、安装路径不能包含有中文&#xff0c;这个我不知道为什么&#xff0c;总之如果安装路径中包含…

MySQL的my.cnf文件(解决5.7.18下没有my-default.cnf)

官网说&#xff1a;从5.7.18开始不在二进制包中提供my-default.cnf文件。参考&#xff1a;https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html 经过测试&#xff0c;在5.7.18版本中&#xff0c;使用tar.gz安装时&#xff0c;也就是压缩包解压出来安装这种&…

【Not all parameters were used in the SQL statement】

在添加游标的时候&#xff0c;添加preparedTrue cursor mydb.cursor(preparedTrue) 感谢博主&#xff1a; 【已解决】Python MySQL: Not all parameters were used in the SQL statement - MoonYear530 - 博客园一、事故缘起 今天构造了一个超过 50 多个参数的 SQL 插入语句…

opencv 文件模块 解析

OpenCV包括以下几个模块&#xff0c;具体功能是&#xff1a; 1、CV&#xff1a;主要的OpenCV函数 2、CVAUX&#xff1a;辅助的&#xff08;实验性的&#xff09;OpenCV函数 3、CXCORE&#xff1a;数据结构与线性代数支持 4、HIGHGUI&#xff1a;图像界面函数 5、ML&#xff1a;…

解决Android Studio报错:DefaultAndroidProject : Unsupported major.minor version 52.0

问题描述 今天使用Android Studio 2.0打开我之前的项目时&#xff0c;编译报了如下错误&#xff1a; Error:Cause: com/android/build/gradle/internal/model/DefaultAndroidProject : Unsupported major.minor version 52.0 其中build.gradle文件内容如下所示&#xff1a; // …

Alpha 通道的概念与功能

RGBA采用的颜色是RGB&#xff0c;可以属于任何一种RGB颜色空间&#xff0c;但是Catmull和Smith在1971至1972年间提出了这个不可或缺的alpha数值&#xff0c;使得alpha渲染和alpha合成变得可能。提出者以alpha来命名是源于经典的线性插值方程αA (1-α)B所用的就是这个希腊字母…

【ValueError: Target is multiclass but average=‘binary‘. Please choose another average setting, one 】

完整报错为&#xff1a;ValueError: Target is multiclass but averagebinary. Please choose another average setting, one of [None, micro, macro, weighted]. 解决方法 对于多分类任务&#xff0c;将 from sklearn.metrics import f1_score f1_score(y_test, y_pred) 改为…

debian apt-get联网安装mysql服务

安装mysql和卸载mysql 1.安装数据库&#xff1a;sudo apt-get install mysql-server 安装过程中需要设置密码。 2.安装客户端&#xff1a;sudo apt-get install mysql-client 3.登录MySQL&#xff1a;mysql -u root -p 4.配置文件&#xff1a;/etc/mysql/my.cnf a.设…

【资料下载区】【iCore、 iCore2相关资料】更新日期2017/1/11

【新产品发布】【iCore2 ARM / FPGA 双核心板】 【iCore系列核心板视频教程】之 SDRAM 读写实验 【iCore双核心组合是开发板例程】【uCGUI 例程及代码包下载】【iCore双核心组合是开发板例程】【12个 verilog 中级实验例程发布】【iCore、iCore2 双核心板】EPCS 实验&#xff0…

图像数据格式基础知识

JPEG文件格式简单分析 作者&#xff1a;小爽 摘要&#xff1a; 这篇文章大体上介绍了JPEG文件的结构信息以及它的压缩算法和编码方式。使读者能够对JPEG文件格式有大体上的了解。为读者进一步进行学习JPEG文件压缩做好准备 关键字&#xff1a;十六进制&#xff0c;段格式&am…

SQL语句:从一个表里按年份统计条目数

比如一个数据表名称叫deploypool&#xff0c; 需要知道里面每一年的记录数&#xff0c; 而add_date字段里有增加记录时的时间&#xff0c; 那么语句如下&#xff1a; SELECT EXTRACT(YEAR from add_date),COUNT(id) FROM deploypool GROUP BY EXTRACT(YEAR from add_date);

为什么需要架构图,怎么画?

Technorati 标签: 架构图,架构,交流,布局不知不觉中做架构师也已经4年了&#xff0c;最初的感觉只是一个名号&#xff0c;不再把代码作为强制的任务&#xff0c;后来开始慢慢的转变工作内容。画图&#xff0c;成为了我的主要工作。我可能不是每天都在写代码&#xff0c;但却是每…

Jenkins构建时间Poll Scm的设置(常用设置)

每15分钟构建一次&#xff1a;H/15 * * * * 或*/5 * * * * 每天8点构建一次&#xff1a;0 8 * * * 每天8点~17点&#xff0c;两小时构建一次&#xff1a;0 8-17/2 * * * 周一到周五&#xff0c;8点~17点&#xff0c;两小时构建一次&#xff1a;0 8-17/2 * * 1-5 每月1号、15号…

图像格式基础

所谓位映像&#xff0c;即是指一个二维的像素矩阵&#xff0c;而位图就是采用位映像方法显示和存储图像。一幅图像的显示就是将图像的像素映射到屏幕的像素上并显示一定的颜色。当一幅图形的像素由彩色表示时就是我们通常所说的彩色图像了。 由于数字图像可以表示为矩阵…

aop理解

1.切面&#xff08;Aspects&#xff09;常常通过通知&#xff08;advice&#xff09;、切点&#xff08;pointcuts&#xff09;和织入点&#xff08;join points&#xff09;来描述 2.通知&#xff08;advice&#xff09;有5种 Before——前置通知&#xff0c;在调用目标方法之…