【生意多】-免费发布分类信息
当前位置: 首页 » 新闻 » 教程 » 正文

Linux程序设计(第4版)

放大字体  缩小字体 发布日期:2020-06-16 17:23:48    浏览次数:10
导读

  用户在屏幕上输入内容再按Enter才把数据传递给程序,这种处理方式为“规范模式(canonical mode)”或标准模式,所有输入都基于行处理(包括退格键),相对是非标准模式(non-canonical mode)。判断文件描述符是否关联到一个终端:isatty(int fd),如isatty(fileno(stdout))判断标准输出是否被重定向(如重定向到文件,则s

  用户在屏幕上输入内容再按Enter才把数据传递给程序,这种处理方式为“规范模式(canonical mode)”或标准模式,所有输入都基于行处理(包括退格键),相对是非标准模式(non-canonical mode)。判断文件描述符是否关联到一个终端:isatty(int fd),如isatty(fileno(stdout))判断标准输出是否被重定向(如重定向到文件,则stdout调用isatty就不为真)。FILE *input = fopen(/dev/tty, r); FILE *output=fopen(/dev/tty, w);打开tty,始终向终端输入输出,即使标准输入输出被重定向也不会改变此值。echo $TERM可查看当前Shell,terminfo屏蔽终端差异,setupterm设置终端类型,tigetnum获取行列长度。Linux通常在前6个虚拟控制台上运行一个getty进程,这样用户即可用同一个屏幕、键盘和鼠标在6不不同的虚拟控制台上登录。

  操作系统分配给程序的内存一般都会比实际使用的大些,如果非法访问的内存出现在这部分区域,硬件就不能检测到,就不会出现段错误。DATE及TIME系统编译时的时间,不是运行时间。还有宏FILE,FUNCTION,LINE。gcc编译时加-DDEBUG时,#ifdef DEBUG代码就可起作用。gdb中用commands 断点号设置执行到指定断点的操作。可在编译时用gcc -O -g来同时获得程序优化和调试信息的好处,但优化可以对程序代码的先后顺序调整,在调试时可能跳来跳去。动态内存检测工具:ElectricFence(发现内存破坏时就停止运行),valgrind(检测出数组访问错误和内存泄漏)。

 
关键词: linux程序设计
(文/小编)
打赏
免责声明
• 
本文为小编原创作品,作者: 小编。欢迎转载,转载请注明原文出处:http://www.31duo.com/news/show-277898.html 。本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们。
 

(c)2016-2019 31DUO.COM All Rights Reserved浙ICP备19001410号-4

浙ICP备19001410号-4