在vs2019中使用清屏函数clrscr()、输入函数getch()会报错是因为在VS中不建议再使用C的传统库函数scanf, strcpy, sprintf等,这些函数都淘汰了,vs视为不安全,所以直接使用这些库函数会提示错误。VS一般使用带_s的函数,如scanf_s、strcpy_s,但这些并不是标准C函数。
Turbo C语言中还有很多函数在vs中使用会出现这种情况。
解决上述问题可以在代码开头添加宏定义:
#define _CRT_SECURE_NO_WARNINGS 1
或者加入下列代码:
#include <windows.h>
void clrscr()//清除屏幕,clrscr是TurBo C语言中的,在vs中使用会报错,所以添加这段代码
{
system("cls");//与clrscr函数等价
}
还可以通过设置项目属性进行改正
步骤看下图
在预处理定义中加入“_CRT_SECURE_NO_DEPRECATE”