error: 'gets' was not declared in this scope; did you mean 'fgets'? 解决方法

问题原因

gets()已经不被提交平台的C++编译器支持,

解决方法

方法1:改用c语言

但是C语音编译器未受影响,把头文件改成C语言格式,用C语音编译器即可通过。

方法2:改用cin.getline

/* 读入一行(可含空格),直到换行符结束
 * 将其前num-1个字符存入数组a中并以字符c结尾 */
cin.getline(a, num, c);

注意:

  1. 也可以不传入第三个参数c,则默认 '\0' 结尾
  2. 若num大于所读入的字符数,则直接存入整行字符串,再在末尾加入字符c结尾
posted @ 2021-11-29 22:16  kingwzun  阅读(4767)  评论(0编辑  收藏  举报