|
1楼 等待用户的输入,并把用户的输入回显到屏幕上,直到用户输入一个结束符号.一个结束符号可以是回车,也可以是EOF. 在WINDOWS里键盘输入EOF一般是CTRL+Z,在LINUX/UNIX里一般是CTRL+D. 如果你是用回车来结束这个输入,那么在屏幕上就会打印一个换行符. 而用CTRL+Z来结束输入,那么屏幕上就不会打印这个结束的东西. |
|
|
|
- 共有19篇贴子
|
2楼 这个问题,谭浩强的C语言设计第二版没有讲清楚,或者没有讲。 查了查其它的资料,总算搞清楚了。 getch()、getche()和getchar()函数 (1) getch()和getche()函数 这两个函数都是从键盘上读入一个字符。其调用格式为: getch(); getche(); 两者的区别是: getch()函数不将读入的字符回显在显示屏幕上, 而getche() 函数却将读入的字符回显到显示屏幕上。 例1: #include main() { char c, ch; c=getch(); /*从键盘上读入一个字符不回显送给字符变量c*/ putchar©; /*输出该字符*/ ch=getche(); /*从键盘上带回显的读入一个字符送给字符变量ch*/ putchar(ch); } 利用回显和不回显的特点, 这两个函数经常用于交互输入的过程中完成暂停 等功能。 例2: #include main() { char c, s[20]; printf("Name:"); gets(s); printf("Press any key to continue..."); getch(); /*等待输入任一键*/ } (2) getchar()函数 getchar()函数也是从键盘上读入一个字符, 并带回显。它与前面两个函数 的区别在于: getchar()函数等待输入直到按回车才结束, 回车前的所有输入字 符都会逐个显示在屏幕上。但只有第一个字符作为函数的返回值。 getchar()函数的调用格式为: getchar(); 例3: #include main() { char c; c=getchar(); /*从键盘读入字符直到回车结束*/ putchar©; /*显示输入的第一个字符*/ getch(); /*等待按任一健*/ } 例4 #include main() { char c; while ((c=getchar())!='\n') /*每个getchar()依次读入一个字符*/ printf("%c",c); /*按照原样输出*/ getch(); /*等待按任一健*/ } |
|
|
|
| 221.12.10.* |
3楼 |
|
|
| 202.113.25.* |
4楼 |
|
|
| 60.160.244.* |
6楼 |
|
|
| 211.138.147.* |
8楼 |
|
|
| 202.118.69.* |
9楼 |
|
|
| 202.118.69.* |
10楼 |
|
|
| 61.167.60.* |
11楼 |
|
|
| 221.217.149.* |
12楼 |
|
|
| 211.142.211.* |
13楼 要说scanf和getchar和getch, 一定要说缓冲区。 |
|
|
| 221.217.149.* |
15楼 |
|
|
| 59.108.195.* |
16楼 |
|
|
| 221.0.90.* |
17楼 |
|
|
|
19楼 要注意很关键的一点~ fflush(stdin); 清除输入缓存!! |
|
|
|
