Ricky leo 2019-07-04 21:18 采纳率: 0%
浏览 3493

c语言字符串gets()函数使用,编译为什么通过不了?

c语言字符串gets()函数使用,结果好像有安全问题?也试过改成gets_和 fgets(大一学习c语言,求大神指导)

#include <stdio.h>
#pragma warning
void main()
{
    char phoneNumber[12];
    printf("请输入手机号码:");![图片说明](https://img-ask.csdn.net/upload/201907/04/1562246312_875481.jpg)

    gets(phoneNumber);
    printf("您的手机号码是:%s\n", phoneNumber);
}
  • 写回答

2条回答 默认 最新

  • threenewbee 2019-07-04 21:53
    关注

    估计你用的是vs2013/15/17/19
    gets是不安全的函数,默认是禁止的
    可以用gets_s代替
    或者,项目属性 -- C/C++-- 预处理器 -- 预处理器定义,添加 _CRT_SECURE_NO_WARNINGS
    在程序开头添加

    #define _CRT_SECURE_NO_WARNINGS
    #define _CRT_SECURE_NO_DEPRECATE
    #pragma warning(disable:4996);
    
    评论

报告相同问题?

悬赏问题

  • ¥100 求数学坐标画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站