hanjie-chen 2021-01-31 15:21 采纳率: 0%
浏览 12

为什么C程序传入EOF之后,后面的所有输入都会变为EOF?

#include <stdio.h>

#define SIZE 40

int main(void)
{
    char * ptr;
    char string[SIZE];
    char ch;

    ch = getchar();
    if (ch == EOF)
        puts("Enter EOF");

    ptr = fgets(string, SIZE, stdin);
    if (ptr == NULL)
        puts("The fgets functions back the null");

    return 0;
}

我在使用gcc来编译之后结果是这个样子的

输入EOF之后

运行结果

 

  • 写回答

5条回答 默认 最新

  • SoftwareTeacher 《编程之美》作者 2021-01-31 16:00
    关注

    你怎么输入 EOF 的?

    评论

报告相同问题?

悬赏问题

  • ¥15 keil的map文件中Image component sizes各项意思
  • ¥30 BC260Y用MQTT向阿里云发布主题消息一直错误
  • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
  • ¥15 划分vlan后,链路不通了?
  • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据
  • ¥15 Vue3 大型图片数据拖动排序
  • ¥15 Centos / PETGEM
  • ¥15 划分vlan后不通了
  • ¥20 用雷电模拟器安装百达屋apk一直闪退
  • ¥15 算能科技20240506咨询(拒绝大模型回答)