前言:
微软的Visual Studio是一款功能强大的集成开发环境(IDE),受众广泛,但如果我们在这个环境下直接调用 输入函数 scanf 会报错,接下来跟我看看我是怎么解决这个问题的吧。
这篇文章适合使用VS的小伙伴~~~
目录
1.报错
这里以输入一个整数为例子,可以看到VS报的错误;
2.临时解决
其实报错中已经包含了两种解决方案:
一是用 scanf_s 来代替 scanf 但这种解决方案只在VS中适用,我们调用的这个函数在其他编译器中就不一定奏效了,考虑到更强的适普性,通常不会选择这种解决方案;
另一种就是在开头放一串 #define _CRT_SECURE_NO_WARNINGS 1 .
#define _CRT_SECURE_NO_WARNINGS 1
解释下这个 1 是怎么回事,简单来说就是避免尴尬 。按照格式,如定义a为10,define是定义,a就相当于那一串,10就相当于那个1了。其实最后这个数字是整数就行,通常用1。
总的来说 就是声明 别给我报错了(针对scanf strcpy strcat等函数)。
3.一劳永逸
那我们以后是不是创建一个新的项就要先打一句 #define _CRT_SECURE_NO_WARNINGS 1 呢? 并不,这里有一劳永逸的解决方法:
在 newc++file.cpp 这个文件中放入 #define _CRT_SECURE_NO_WARNINGS 1 即可
搜索(我用的是Everything,真的好用!!!)→ 打开路径(路径先别关) →
把目标文件粘贴到桌面 → 用 VS 打开文件 → 把那句丢到第一行,保存 →
把修改的文件拖回原路径,替换
这样一番操作后,新建的c/cpp文件开头就都会有这一声明了,是不是很妙呢
总结:
这篇博客为VS中 scanf 等函数的调用报错问题提供了解决方案,小妙招学会了吗?
如有弄不懂的地方,欢迎提问,我会认真解答哒~~~