解决VS中scanf()函数报错问题的四种方案(详细)-创新互联
scanf函数在VS中报错的主要原因是 scanf被认为不安全而被编译器默认设置为禁用。
那么如何解决这个问题呢
法一:
仅将函数scanf替换为scanf_s即可,其他语法不变。但scanf_s函数并不是C语言函数库里的标准函数,而是VS编译器所提供的函数,所以并不推荐用这种方法来解决问题。
法二:
在代码的最顶端输入#define _CRT_SECURE_NO_WARNINGS
(!!!注意一定是最顶端不然依旧会报错)
错误示例:
正确示例:
这样就解决了,但是这个办法依然有缺陷,就是当我们每一次新建一个程序或者项目时,就要重新去在代码的最顶端输入#define _CRT_SECURE_NO_WARNINGS。这显然还不是我们想要的解决方案。
法三:
在VS的界面中,最顶端找到项目这一栏,点击属性
找到C/C++这一栏,选择预处理器,打开预处理器定义这一栏最右边的小三角,选择编辑。
在最上方的白框中输入_CRT_SECURE_NO_WARNINGS,点击确定,然后点击应用(切记是应用而非确定),但这种办法依旧不能一劳永逸(恼)。
法四:
打开文件资源管理器,找到visual studio 的安装路径,然后在该路径下搜索 “newc++file.cpp” (或可直接搜索,路径越细查找速度越快)
找到这个文件后复制粘贴到桌面上
输入#define _CRT_SECURE_NO_WARNINGS,后保存退出
将文件拖回原来的位置,点击替换目标中的文件,之后点击确认就好(如果直接在原位置更改保存的话会要管理员权限导致无法保存)
此后我们在VS中创建新的源C/CPP文件时会在开头自动输入
#define _CRT_SECURE_NO_WARNINGS,一劳永逸解决问题。
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
网站题目:解决VS中scanf()函数报错问题的四种方案(详细)-创新互联
标题来源:http://myzitong.com/article/ddhogp.html