hchchc6016 2016-03-09 13:04 采纳率: 91.2%
浏览 1534
已采纳

请问一下这个为什么报错

vs2015没有定义gets
所以用了gets_s,实参类型是char没错哇图片

  • 写回答

4条回答 默认 最新

  • w1eix1iao 2016-03-26 07:49
    关注

    get_s,函数是微软自己推出来的,需要两个参数,一个是缓冲区的地址,一个是你要读入多少数据。这个函数并非c标准库。
    _你可以在编译器的最前面加上这句话#define _CRT_SECURE_NO_WARNINGS,这样编译器就不会说get函数不能用了(实际上vs支持这个函数的,只是默认不支持)。
    不过这个函数很不安全,推荐你以后使用这个函数char *fgets(char *buf, int bufsize, FILE *stream);你可以这样写:
    fgets(buf,bufsize,stdin)
    buf是你定义的缓冲区的地址,bufsize表示最多读入bufsize-1个数据,stdin是一个系统已经定义好的宏,表示标准输入(具体来说,这里是你敲打键盘时的输入)。当这个函数遇到回车就会停止。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器