Linux C中标准输入输出及重定向
2012-11-16 17:01
232 查看
1.关于backspace
getchar从标准输入的缓冲区读字符,backspace根本进不了缓冲区。所以应该使用无缓冲的读字符函数:getch(),包含在头文件<conio.h>中。
确实用getchar是无法检测到的。在控制台中输入的\b用来修改输入的字符,并不送入到输入缓冲区中,如果想让此程序有结果,可以用文件来作为输入,文件中可包含\b的ascii码,就可以显示出\b了。当然是二进制的文件。可用文件重定向作为输入。或者改用其他的函数来读取输入的字符,不过标准C中未提供这样的函数,只有少数编译器提供了。
2.简单的解决办法
getchar从标准输入的缓冲区读字符,backspace根本进不了缓冲区。所以应该使用无缓冲的读字符函数:getch(),包含在头文件<conio.h>中。
确实用getchar是无法检测到的。在控制台中输入的\b用来修改输入的字符,并不送入到输入缓冲区中,如果想让此程序有结果,可以用文件来作为输入,文件中可包含\b的ascii码,就可以显示出\b了。当然是二进制的文件。可用文件重定向作为输入。或者改用其他的函数来读取输入的字符,不过标准C中未提供这样的函数,只有少数编译器提供了。
2.简单的解决办法
system("busybox stty erase ^h");
相关文章推荐
- java.io.Console的使用以及重定向标准输出/输入
- java IO流(四)--重定向标准输入输出
- bash的保留文件描述符 012标准输入,输出,错误文件的重定向
- 重定向标准输入,输出以及错误流
- 第15章-输入/输出 --- 重定向标准输入/输出
- C语言(Head First C)-4_1:创建小工具:标准输入输出和重定向
- 初学Java,IO之重定向标准输入\输出(四十五)
- Python第十天 print >> f,和fd.write()的区别 stdout的buffer 标准输入 标准输出 从控制台重定向到文件 标准错误 重定向 输出流和输入流 捕获sys.exit()调用
- Linux系统教程 标准输入/输出和重定向
- Java标准输入/输出 重定向
- 转:python重定向标准输入、标准输出和标准错误
- OJ 调试技巧:VS2010 中 通过设置编译参数定义宏,无需修改源文件重定向标准输入输出
- 重定向标准输入/输出
- Linux 标准 输入 输出 重定向. printf 不输出到屏幕的解决办法
- Linux shell中的标准输入、输出重定向
- 对一个标准的输入/输出窗口临时重定向到一个文件
- Python重定向标准输入、标准输出和标准错误
- 标准输入、输出和错误和文件重定向
- 控制台程序的标准输入输出的重定向
- Linux 标准输入输出及重定向