黑马程序员技术交流社区

标题: 关于get方法! [打印本页]

作者: dream静    时间: 2014-11-3 21:58
标题: 关于get方法!
谁能详细告诉下getchar()这个方法和get()方法,大致的用法和方法里面大致是什么。
作者: supergcs    时间: 2014-11-3 21:58
getchar有一个int型的返回值。当程序调用getchar时。程序就等着用户按键。用户输入的字符被存放在键盘缓冲区中。直到用户按回车为止(回车字符也放在缓冲区中)。当用户键入回车之后,getchar才开始从stdio流中每次读入一个字符。getchar函数的返回值是用户输入的第一个字符的ASCII码,如出错返回-1,且将用户输入的字符回显到屏幕。如用户在按回车之前输入了不止一个字符,其他字符会保留在键盘缓存区中,等待后续getchar调用读取。也就是说,后续的getchar调用不会等待用户按键,而直接读取缓冲区中的字符,直到缓冲区中的字符读完为后,才等待用户按键。
  1. #include <stdio.h>
  2. int main(void)
  3. {
  4. int c;
  5. /* Note that getchar reads from stdin and
  6. is line buffered; this means it will
  7. not return until you press ENTER. */
  8. while ((c = getchar()) != '\n')
  9. printf("%c", c);
  10. return 0;
  11. }
复制代码


作者: 万合天宜    时间: 2014-11-5 22:31
getchar();的用法很多:
一种就是清空回车符,这种情况一般发生在在循环中涉及到输入的情况。
还有一种是某些编译平台(IDE)在运行程序时并没有在程序运行后给人看结果的时间,这时候在程序最后加上getchar();就能造成程序的暂停,给程序员度结果的机会。

用getchar();时,在键盘上按一个字符后,要按回车才能读取进去;用getch();时,在键盘上按一个字符马上就被读取进去,不用按回车,因此可以作为“按任意键继续”的执行语句。

作者: dream静    时间: 2014-11-6 14:07
万合天宜 发表于 2014-11-5 22:31
getchar();的用法很多:
一种就是清空回车符,这种情况一般发生在在循环中涉及到输入的情况。
还有一种是 ...

谢谢啊还有没有在仔细详细点得比如字符怎么读取进去再输出的过程
作者: Larno    时间: 2014-11-6 18:34
那里面的这个方法?
作者: dream静    时间: 2014-11-9 11:45
Larno 发表于 2014-11-6 18:34
那里面的这个方法?

什么那里面的这个方?什么意思
作者: 暴君    时间: 2014-11-12 19:21
getchar()是不是C里面的?get()方法知道,getchar没用过。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2