C高级学习总结

        一周的c高级课程结束了,较之一周前的我在对c的理解上不仅有了全新的认识,而且学到了许多关于嵌入式软件开发方面的知识。在这一周的学习中,首先我们又重新认识了一遍Linux操作系统,从其发展历史这方面重新认识它。在这其中的学习里,我知道我我们所使用的操作系统是如何演变成今天这副样子的,又有多少精彩绝艳的前辈们为完善改进它做出了多少努力和令人叹为观止的创新。

         之后我们又学习了一些更加进阶的常用操作命令,这使得我们在日常的操作中更加的得心应手,做事情也更加效率了起来。接下来我就我自身在学习过程中所遇到的一些问题和过程中总结到的东西分享出来。

嵌入式操作系统

        首先嵌入式操作系统是管理和控制计算机硬件与软件资源的计算机程序,它是直接运行在裸机上的最基本的系统软件,任何其他的软件都必须在操作系统的支持下才能运行。

        操作系统分为7大类,我们所说的嵌入式操作系统就是其中的一种,他是一种以应用为中心,以计算机技术为基础,软硬件可裁剪,适用于对功能、可靠性、成本、体积、功耗有要求的专用计算系统。

shell编程

         shell编程是一堆命令的集合,一个完整的执行过程由创建一个.sh结尾的文件开始,然后通过chmod命令修改文件的权限,使其变得可以编写和执行,然后进入文件进行相应的程序编写最后执行的过程

         在编写的过程中,其运用到的技巧与逻辑与c语言不尽相同,虽有相似之处却也有完全不同的地方,两者各有优劣。

变量

          首先,在变量的命名规范方面,shell编程的命名规范也应遵守以下三点:

                                      1.有数字、字母、下划线组成,首字母不能为数字

                                      2.不能为关键字和保留字

                                      3.尽量见名知意,尽量大写

          这几点对于c来说也是完全通用,但shell编程方便的一点是,shell编程在定义变量额时候不用声明变量的类型,不想c对变量类型有着严格的规范,但在赋值的时候等号的左右两边不能出现空格。

          在访问变量这里,shell相较于c就显得稍稍有一点复杂了。其在访问变量的值的时候需在变量的名字前加上"$"符号才能对变量所代表的值进行正常的访问。

参数

          shell有设定位置参数(命令行参数),其是由系统提供的参数。同时shell也具有预定义变量。包含$#:包含命令行参数个数,$@、$*: 包含所有命令行参数,$$:包含正在执行进程的ID号,$?:包含前一个命令退出的状态。
           shell语句在执行加减乘除等操作的时候必须要用到expr这个算数运算命令,其运用方法是外围用反引号括起来,在反引号的内部先写上expr然后是变量一和变量二的取值然后再对其进行相应的算数运算。

测试语句


            shell有着很强大的测试命令在测试字符串的内容上可以用“=”来测试两个字符串内容是否相等,也可以用“!=”来测试是否有差异,“-z”测试其长度是否为0,“-n”测试其长度是否不为0。shell当然也可以用来进行整数间的测试如-eq用来测试两个整数是否相等,-ne测试是否不相等,-gt测试是否大于,-ge测试是否大于等于,-lt测试是否小于,-le测试是否小于等于。测试文件属性相关的知识也很重要,比如-d用来测试一个文件是否为一个目录,-f测试其是否为普通文件,-L测试是否为符号链接,-r、-w、-x、-s则测试文件是否存在且分别是否可读、可写、可执行、长度是否为0。-nt与-ot则分别测试了前面文件是否新于或旧于后面的文件。

三大结构

            shell也和c一样有三大结构,首先,shell的顺序结构的输入命令是read,输出命令是echo。而在shell中read -p选项也可是实现部分输出的功能,如在输入时提到提示的作用。 shell的选择结构也分为单分支、双分支和多分支三种,其形式分别如下图所示:

单分支
双分支
多分支

 

多分支

           shell的循环结构也与c有着种种异同while语句循环条件要再[]里面,且每个while后倒要加上done结尾。for循环则有着独特的列表机制。使用时要特别注意其与c不同的地方,做好区分与书写规范。当然,shell的循环里也不会缺少break和continue这两个存在,它们的异同与c中别无二至,便不再此展开。

总结

           总的来说这一周的学习力相对与我来说比较重要的东西都已经列出,在这一周的学习过程中我学到了许多思考的方法,这让我在学习的过程中加深了对所学知识的理解和运用能力,对所学知识再案例作业里的成功运用也让我成就感爆棚,加强了我的学习兴趣,对我的学习过程起到了非常好的正反馈作用,也让我对今后邪恶学习更加的有信心,也更充满积极性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值