有关于第一次使用scanf就报错,而且找不出有什么问题的,比如这样的
错误是scanf函数可能不安全,建议使用scanf_s
初学的时候不建议大家使用scanf_s。因为scanf_ s函数是VS2022提供的,不是C语言提供的
如果你在代码使用了scanf_s函数,你的代码只能在VS.上编译其他的编译器不认识,这会降低了代码的可移植性~
解决办法:只要在使用scanR函数的. c文件的第一行加上
#define_ CRT_ SECURE _NO_ WARNINGS 1
但是每次编辑c语言代码都要记得加这一串代码很麻烦!
一劳永逸的解决方法:
在vs.上新建. c/. cpp文件的时候,其实拷贝的是newc++file. cpp这个文件。那么在newc++file. cpp文件中加上:#define_ CRT_ SECURE_ NO_ WARNINGS 1,以后新建的.c/.cpp的文件中都会包含这句代码
具体步骤:
利用everything软件搜索newc++file. cpp这个文件,找到对应vs2022这个文件。
右键文件,“打开路径”,
找到后,右键,“打开方式”,这里举例用记事本打开
在空的记事本加入这句话
然后保存,注意要保存到同一个路径下
但是有可能出现这样的情况,因为电脑保护了这些路径
那么我们就Ctrl+C拷贝一份 newc++file. cpp这个文件到桌面上(不要把原来的文件搞丢了!!!,否则新建源文件的时候就没有c++文件的选项了),按一样的步骤将桌面上这份文件添加那句话,再保存(桌面是有权限保存的),然后再将桌面的这份文件拷贝回刚刚那个路径,替换原来的文件。
注意:1. 如果没有修改权限,可以拷贝到桌面上修改修改后,记得再拷贝回去
2.新建.c文件的时候,不要使用[紧凑视图] ,否则那行代码还是不会显示出来,如果是左边这种图就点击“显示所有模板”,用右图中的视图选择C++文件才能显示我们想要的代码
如此编辑后,我们每次打开VS编辑C/C++时都会自动显示防止scanf出错的代码