一起talk C栗子吧(第一百九十六回:C语言实例--DIY less命令五 )
来源:互联网 发布:影视后期特效合成软件 编辑:程序博客网 时间:2024/06/04 18:56
各位看官们,大家好,上一回中咱们说的是DIY less命令的例子,这一回咱们继续说该例子。闲话休提,言归正转。让我们一起talk C栗子吧!
看官们,我们对DIY的less的介绍已经有四个章回了,这一回中我们对该命令以及前面四个章回进行一个总结。我觉得图形是最好的总结,接下来我们上个图和大家一来看看:
从上图中可以看出,我们整体的内容是三大块,前两块内容:“打开文件”和“显示文件”放到了一个章回中进行介绍。第三块内容中的“获取命令”和“判断命令”放到了一个章回中介绍,这块内容中最复杂的是响应命令,这部分内容又分成了三个小模块,我们分别用两个章回的内容对它们进行介绍。
通过上面的分析,我给大家理清了这几个章回的内容要点。大家写代码的时候,可以参考这个图形来进行,先把整体思路定下来了,然后再完善小的细节。这也算是一种解决问题的方法吧,我当时DIY less命令的时候,就是使用这个方法来进行的。我再来个现身说法,当时实现“显示一个屏幕内容”的功能时就遇到了细节上的问题:在显示文件中的内容时可以使用一个循环,但是循环会把文件中所有的内容全部显示出来,这显然不符合less命令的要求,于是我才准备让它显示一个屏幕大小的内容,可是屏幕有多大呢?这就是一个细节上的问题,最后通过查阅资料解决了该问题,进而实现了“显示一个屏幕内容”的功能。
看官们,代码比较多,我就不列出来了,完整的代码放到了我的资源中,大家可以点击这里下载使用。在编译该程序的时候需要和其它文件一起编译,并且链接ncurses库,具体的编译命令如下:
gcc cat.c cd.c date.c less.c ls.c main.c main.h pwd.c -o diyshell -lncurses
各位看官,关于DIY less命令的例子咱们就说到这里。欲知后面还有什么例子,且听下回分解 。
- 一起talk C栗子吧(第一百九十六回:C语言实例--DIY less命令五 )
- 一起talk C栗子吧(第一百九十三回:C语言实例--DIY less命令二 )
- 一起talk C栗子吧(第一百九十四回:C语言实例--DIY less命令三 )
- 一起talk C栗子吧(第一百九十五回:C语言实例--DIY less命令四 )
- 一起talk C栗子吧(第一百九十二回:C语言实例--DIY less命令一 )
- 一起talk C栗子吧(第一百九十七回:C语言实例--DIY cp命令一)
- 一起talk C栗子吧(第一百九十八回:C语言实例--DIY cp命令二)
- 一起talk C栗子吧(第一百九十九回:C语言实例--DIY cp命令三)
- 一起talk C栗子吧(第一百三十七回:C语言实例--查看环境变量)
- 一起talk C栗子吧(第一百四十五回:C语言实例--socket概述)
- 一起talk C栗子吧(第一百四十六回:C语言实例--socket属性)
- 一起talk C栗子吧(第一百五十五回:C语言实例--获取socket通信地址)
- 一起talk C栗子吧(第一百六十四回:C语言实例--const关键字)
- 一起talk C栗子吧(第一百六十六回:C语言实例--大小写字符转换)
- 一起talk C栗子吧(第一百九十回:C语言实例--文件定位三 )
- 一起talk C栗子吧(第七十三回:C语言实例--DIY pwd命令)
- 一起talk C栗子吧(第七十四回:C语言实例--DIY cd命令)
- 一起talk C栗子吧(第七十五回:C语言实例--DIY ls命令)
- leetcode-94. Binary Tree Inorder Traversal
- poj3278
- JSON字符串、JSON对象的区别与两者之间的相互转换
- 互联网公司产品经理要求及需要掌握的技能
- 自定义Android中edittext中的hint文本的大小
- 一起talk C栗子吧(第一百九十六回:C语言实例--DIY less命令五 )
- Trafodion 创建多Column Families表
- Socket学习 - 开启Socket学习之旅
- xcode 对react-native的开发问题
- DataTable转List
- 安全编程: 避免竞争条件
- android选本地图片和本地视频
- 系统集成项目管理工程师---项目范围管理
- caffe 添加新的网络层