目录
如何把#define _CRT_SECURE_NO_WARNINGS 1这句话在创建工程后就立马有这条语句出现?
执行代码反而出现下面这种情况的时候:
对于出现'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.这个警告/错误的提示时,我们可以知道它说scanf这个函数可能不安全,考虑使用scanf_s替换。想让这个描述失效的话,请使用_CRT_SECURE_NO_WARNINGS.
第一种解决方法:
就是把scanf替换成scanf_s,但是不提倡,因为它不满足于其他平台,就不具备跨平台性/可移植性。
scanf是C语言提供的
scanf_s不是标准C语言提供的,是当前VS编译器提供的
第二种解决方法:(最好)
就是在开头第一行输入#define _CRT_SECURE_NO_WARNINGS 1。它不只是针对scanf这个函数,还有strcpy、strlen、strcat等库函数,都被认为是不安全的,都可以用这个方法来解决。
如何把#define _CRT_SECURE_NO_WARNINGS 1这句话在创建工程后就立马有这条语句出现?
以VC++2010为例:
首先找到Microsoft Visual c++2010图标右击属性
然后在我的电脑相应的盘中找到VC++2010,我把它放在D盘那么我就在D盘中寻找,看你们把VC++2010放在哪个盘就在哪个盘寻找。然后双击点进去找到VC文件再双击打开。
找到vcprojectitems文件双击打开
找到newc++file.cpp然后用记事本打开
把#define _CRT_SECURE_NO_WARNINGS 1这句话写进去然后保存。
*出现拒绝访问
*但如果出现拒绝访问那么我们就要用notepad++
最好下载一个notepad++工具,还是挺好用的。
然后把#define _CRT_SECURE_NO_WARNINGS 1这句话写进去然后保存它就会重新启动notepad++然后我们再重新打开newc++file.cpp文件保存就可以了。
安全的读取输入的方法:fgets函数来读入字符
此方法来自于CSDN-Ada助手的评论。本人不太懂这个方法,但也有去深究。看了CSDN中发狂的蜗牛这位用户fgets函数及其用法,C语言fgets函数详解这篇文章,从中受到深刻的启发。具体方法建议还是看CSDN中发狂的蜗牛这位用户fgets函数及其用法,C语言fgets函数详解这篇文章,讲的非常详细。
fgets函数及其用法,C语言fgets函数详解_发狂的蜗牛的博客-CSDN博客
*本篇文章内容是来自于网上查阅的资料,如果有错误的地方还请各位指点我好知道哪里出错了并加以修改。