用的是vs2019。
为了安全,scanf_s输入字符串时需要加一个数字来限制最多读取的字符数。
错误示例:
char* str[100];
scanf_s("%s",str);
这样写编译器没有报错,但是运行会出错,debug显示
正确写法:
char* str[100];
scanf_s("%s",str,5);
这样scanf_s最多会读取5个字符(包括字符串最后的 '\0' )
//记录一下学习中遇到的问题。
用的是vs2019。
为了安全,scanf_s输入字符串时需要加一个数字来限制最多读取的字符数。
错误示例:
char* str[100];
scanf_s("%s",str);
这样写编译器没有报错,但是运行会出错,debug显示
正确写法:
char* str[100];
scanf_s("%s",str,5);
这样scanf_s最多会读取5个字符(包括字符串最后的 '\0' )
//记录一下学习中遇到的问题。