严重性 代码 说明 项目 文件 行 禁止显示状态
错误 C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. Demo f:\Users\liuyuhang\source\repos\Demo\Demo\demo.c 7
scanf改scanf_s
scanf_s
scanf和scanf_s是用于读取用户输入的函数,在VS中有一些细微的差别。主要区别如下:
a. 安全性:scanf_s是安全版本的scanf函数,它在读取用户输入时会进行边界检查,防止缓冲区溢出。而scanf函数在一些情况下可能导致缓冲区溢出的安全隐患。
b. 编译警告:在使用scanf时,编译器会发出一些警告,因为它无法在编译时检测格式字符串中的参数是否与使用的变量类型匹配。而scanf_s会在编译时检查格式字符串,如果不匹配会产生编译错误。