求大神指点

来源:5-2 Linux C 动态数据结构-动态链表

qq_愿时光安好_04050009

2017-01-30 10:55

关于缓冲区的问题。缓冲区是不是分为输入和输出缓存,你在屏幕上输入时就是将数据以字符写入了缓冲区,当你按下回车就是将数据以指定格式读取到内存,而输出就是将数据从内存读取,在写入到输出缓冲区,屏幕上你打的字符和输出的字符被缓冲区读取到了哪里?既然它显示了就应该占据空间,而缓冲区又太小,屏幕上那么多的字符在哪里存着呢?

第二个问题:while (getchar() != ‘\n’)

                        continue;

    putchar();

具有丢弃除了字符的功能,是不是getchar()每从缓冲区读取一次字符,就会将该字符清除,还是会将光标移到下一个字符开始读取?

当getchar() == ‘\n’时已经不满足循环条件了,那'\n’是被使用了还是被清除了?

求大神解惑,关于缓冲区的疑问...做输入验证时发现‘'\n’真是一个麻烦的字符。


写回答 关注

2回答

  • 慕粉2051508916
    2017-03-11 15:53:33

    while小括号后面的getchar不能这么写,书写有误

  • super哈哈
    2017-02-06 17:45:43

    我觉得你得问题有点长,所以很少有人回答。。。。。。。。


Linux C语言结构体

C语言的深入,帮助小伙伴们进一步的理解C语言,赶紧看过来

118294 学习 · 162 问题

查看课程

相似问题