如果你在编译器中使用scanf时出现“ 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. ”诸如图6.1
6.1这里的报错并不是因为您的语法上出现了错误,而是这个“scanf"在编译器认为是不安全的 ,此时编译器其实提供了两种方案
一就是把scanf替换成编译器认为安全的scanf_s
二就是使用_CAT_SECURE_NO_WARNINGS
但是并没有说明二方案是如何使用,
其实只需将_CAT_SECURE_NO_WARNINGS定义在一行即可,
注意一定是第一行,而且define与_CAT_SECURE_NO_WARNINGS之间是有一个空格的,例如图6.2
6.2
两个方案都行但各有优缺点,方案一虽然操作简单,但对于代码而言它的可移植性却变低了
方案二虽然好但是操作有一点不方便每一次都要去打一遍,
其实方案二有一个一劳永逸的方法让你每次打开编译器都会自动生成第一行的代码,操作涉及修改编译器我在这里就不好阐述了
应该会有人疑问不是还有一个scanf返回值被忽略的警告吗?
其实这个警告并不影响代码的运行我尝试过许多方法都没用,会导致出错,也就先不管了
如果有哪位大佬知道的话,敬请留言