我所使用的C语言编译器是Visual Studio2022
我们首先先了解到scanf函数是输入函数。
scanf 是 scan format 的缩写,意思是格式化扫描,也就是从键盘获得用户输入,和 printf 的功能正好相反。
当我们使用scanf函数时,往往会出现问题,如图所示:
上图显示推荐我们使用scanf_s函数替代,但我们需要知道一点:scanf_s函数是由VS编译器提供的,不是C语言标准规定的。所以只有在VS平台上才能用它,其他平台无法使用,所以实际并不推荐。
上图还显示,如果不想弃用scanf函数,请使用: _CRT_SECURE_NO_WARNINGS .
于是我们就得知了解决办法,来到代码的第一行,输入:#define _CRT_SECURE_NO_WARNINGS 1
如图所示:
注意:#define后有一个空格,以及一定是在源文件的第一行加上!
代码就可以运作啦!!!
———————————分割线————————————
可是,每次都要在第一行加,会不会太繁琐了呢?会!所以一劳永逸的解决办法,它来了!
第一步:按照路径"D:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\VC\VCProjectItems\newc++file.cpp"找到图中所框文件。如图所示:
第二步:右键后,选择“在记事本中编辑”,输入"#define _CRT_SECURE_NO_WARNINGS 1"(此时是无法进行保存的)。如图所示:
第三步:打开电脑菜单,找到记事本,右键,点击“以管理员身份运行”,即可进行保存。如图所示:
完结撒花~以后可以放心大胆使用scanf啦!