前言:
这将是我写的第二篇博文了,以后我将会坚持每天花固定时间来写博客,希望我当我写了一定数量的文章之后,我自己简单的就能够写出质量优秀文章来,加油!!!
一、scanf函数无法正常使用的原因
1.错误实例
在vs中如果想直接实现并使用scanf函数,很抱歉直接使用,用不了,因为编译器压根就无法执行使用了scanf函数的代码,编译器会提示错误给你;
错误就如下图所示:
2.scanf_s的由来
看到上面那张图片大家可能会疑惑,这张图片上的scanf_s又是什么,他其实是vs编辑器,也就是微软自己创造的的一个库函数,造这个函数的原因是,在vs编译器上使用scanf不是不安全吗,我就造一个与scanf函数功能一样,且我认为使用会安全的函数也就是scanf_s,这就是scanf_s函数的由来;
3.使用scanf_s的注意事项
- scanf_s跟scanf的使用方式不完全一样;
- scanf_s只能够在vs中使用,他是在vs中造出来的,仅限于在vs中使用;
- scanf_s在别的编译器上使用,编译器是不认识scanf_s是什么,是无法正常使用的;
- scanf_s相对于scanf,scanf可以在除了vs编译器上的其他编译器上都可以直接使用,而scanf_s的使用范围,就局限于vs中;
如果要想用vs中的scanf_s函数,要注意的点,也就是我上面列举出来4点
二、解决scanf并能够使用的办法
前情提要:在章标题一的内容部分,我讲述了为什么无法使用scanf,以及scanf_s是啥;
需求:我就是想在vs中使用scanf函数,而不想使用vs认为使用会更为安全的scanf_s函数,解决办法如下;
1.纯手动解决
解决方法(图例):
步骤一:
步骤二:
步骤三:
注意事项:
- 该命令只能放在源代码第一行,不能放在其他行;
- 要是创建一个新的源文件,正常使用scanf函数,第一行也得加上该命令,vs中多个源文件都想正常使用scanf函数,第一行都得加上该命令;
- 要注意#define与后面的内容是至少要有一个空格的;
命令:#define _CRT_SECURE_NO_WARNINGS(直接复制到vs中就可以用了);
该命令不能放在第二排,如下图所示:
2.便利的解决
纯手动解决的缺点:纯手动解决,过于机械和重复,需要每次在创建新的源文件时,想使用scanf函数,每次得在第一行添加这个命令:#define _CRT_SECURE_NO_WARNINGS,不太推荐;
便利解决的优点:按照操作进行设置,就能每次在创建新的源文件时,会在第一行自动生成该命令:#define _CRT_SECURE_NO_WARNINGS,相对于纯手动解决,更加便捷和方便,推荐使用;
便利解决的方法教程:
- 步骤一:电脑上要先下一个工具,这个工具名字叫做everything,点击蓝色的字体也就是everything即可跳转到官网下载地址;
- 步骤二:下载好后,进入软件,在软件的最上方的一行格子内输入newc++file.cpp这个文件名,要注意部分人可能在输完文件名后,会查询到多个相同文件名的文件,这些相同文件名的文件中,只有一个是我们要用到的,除了要用到的,其他的都是临时文件,这个一定要选对,那要怎么选呢,通常要选择正确的文件,其文件地址只要是跟自己的vs下载地址对的上号的则就是了,选完之后单击右键,选择路径即可跳转到对应的文件目录下;
- 步骤三:到了对应的文件目录后,目录中会有newc++file.cpp这个文件,我们选中它单击右键,选择在记事本中编辑,编辑打开后,不管里面有啥内容,我们把这句话
#define _CRT_SECURE_NO_WARNINGS
给复制粘贴进去,替换掉打开记事本编辑之后的默认内容,替换完成后,按Ctrl+S保存即可,然后这时后,系统可能会告知你权限不够,首先不要退出了该文件所在的目录,如果不小心退出了,先不要慌,我们再次使用everything工具搜索文件名,找到文件还是单击右键,选择路径,之后就可以再次回到文件所处的原目录下,要是遇到这种情况我们先把该目录下的文件,给复制一份到电脑桌面上,再在电脑桌面单击右键该文件,还是跟前面的操作一样,选择记事本编辑,也是先把这句话复制进去,替换掉里面默认打开后的内容,复制粘贴后,我们也是先按Ctrl+S保存替换好的内容,再把桌面上保存好了的文件,给复制一份,然后再来到newc++file.cpp文件所在的目录下,把桌面上复制好的文件,直接Ctrl+V粘贴,用桌面上编辑保存并复制下来的的newc++file.cpp,替换掉在目录下的newc++file.cpp即可;
完成以上步骤流程,这时候在vs中新建源文件,每次即可在源文件中的第一行自动生成该命令#define _CRT_SECURE_NO_WARNINGS
下面展示的是完整的一个步骤流程,顺带过一下如何创建项目,以及在项目中如何创建源文件;
还不会创建项目,以及在项目中创建源文件的宝子可要认真做好笔记学习了
流程一:
流程二:
流程三:
流程四:
流程五:
(在流程五中可能会遇到的情况)
流程六:
流程七:
流程八:
标签:函数,scanf,源文件,编译器,vs,使用,库函数 From: https://blog.csdn.net/Q1783698366/article/details/139562044结言:
- 希望我的这篇文章,能够对有需求的人,产生一定的帮助,在此希望我们都能够天天开心,每天乐观积极、事业有成,然后实现自己的理想与抱负,也请你们共同见证我的成长,而我也会陪伴你们共同前行,最后我在这里谢谢大家了;