[求助]谁对c语言熟悉,一个问题
getc()和getchar()在用户输入后必须按回车程序才可以继续,有没有不需要按回车程序就可以继续运行的类似于getc()和getchar()的函数?
在linux环境下哦
------解决方案-------------------- 可以试试设置缓冲区的个数为1
------解决方案--------------------你可以通过禁止缓存来实现,见下面的代码。缺省的流I/O是缓存的,回车会刷新缓存。
#include <stdio.h>
int main() {
int i;
setbuf(stdin, NULL);
while(1) {
i = fgetc(stdin);
printf( "i=%d\n ", i);
}
}
------解决方案--------------------http://blog.csdn.net/anyue417/archive/2006/08/24/1114543.aspx
#include <stdio.h>
main()
{
int c;
/*最初终端驱动处于普通的一次一行模式*/
system( "stty raw "); /*使终端驱动处于一次一字符模式*/
c=getchar();
system( "stty cooked "); /*使终端驱动回到一次一行模式*/
}