现在,装了个vs2012发现有很多的地方,和以前的配置不一样。
写完代码,运行的时候总是一闪而过;
项目------属性-----链接器-------系统---------子系统:选择控制台
发现一些错误,原来是警告的~~
处理方法:
解决方法如下:
-
在所有的包含头文件之前加入 #define _CRT_SECURE_NO_WARNINGS 以禁用不安全警告
-
在项目属性里设置C/C++ 高级项目中编辑禁用特定的警告:4996
-
写预处理语句禁用4996警告 #pragma warning(disable:4996)
其实补充说一下:其实4996不是错误,只是一个警告……vs2012把这个视为错误了而已。主要不安全的地方在于起潜在的缓冲区边界问题,这种不安全性表现在用户编程时的访问越界,而不是楼上说的防御缓冲区益出攻击的问题,因为就算缓冲区益出了,这个库也无法提权,只会让程序崩溃而已。不过确实存在不安全使用的隐患,不过正如c标准中说的:这个时候安全性是由用户保证的。
引用:http://zhidao.baidu.com/question/557970790.html