经过c高级的学习之后,发现自己学的c基础是小巫见大巫了。学习的内容分为两个模块一是Linux基础,二是c高级。
首先是Linux基础,之前用到的一些shell命令,例如cp,mv,ls等等,只是一些操作文件的基础命令(在Linux系统里面认为一切皆文件),但后面的内容学的是认识Linux系统框架,linux和Windows的区别,发展史等等,以及写shell脚本命令,这些内容也只是让我们了解和会写一些就行了,这些内容是往运维工程师那方向走的,我是往嵌入式方向走,毕竟c高级才是我要学习的重点。
c高级的内容就是函数与指针。函数的话,之前上c基础课的时候多多少少讲了一点,所以学起来还好,但指针就真的费脑子,老师也是着重在讲指针和函数,数组相结合起来的知识点,练习也是多了起来 ,晚自习的时间都不够我做完,所以那几天晚睡比较严重。第二天老师评讲作业的时候,老师在***的时候,我很容易就不知道老师的指针指向哪去了,要花时间去想和理解,也感觉到老师的思维真的好活跃。
后面在写代码的时候出现错误次数最多的就是段错误(核心已转载),最开始出现错误的时候,我是一脸懵的,基本是不知道错在哪里(对指针还不熟悉),加上晚睡精神不好,看见这个错误就更不想去改了,
再后来就是尝试用printf语句输出内容一句一句去找,看看是哪个地方没有的弄对。有段时间是找出出问题的地方,但是改不正确(还是不熟悉指针),代码又多(也就快两百行左右),我很容易就是再重新写一次,但这样问题在那里就没有解决过,重新写的也报同样的错误。然后我就跟着老师的代码去写,也不知道什么时候,自己对指针的了解开始更进一步了,在后面的练习中,也慢慢接受使用指针去写代码(虽然有时候会报错),但自己大部分问题都能知道是因为什么原因报错,也能修改了,可能是之前遇到的错误让我积累了一些经验吧。
上面是指针内容的经历,然后函数的话,我用的比较少,开始的时候还是喜欢什么都写在main函数里面,遇到一些重复的代码也很少使用函数调用的形式去写,毕竟那时候我连指针都还不能熟练使用,经常把形参当作实参使用,各种报错和没有预期的结果。当指针开始入门了之后,我就开始使用函数将代码简洁化,函数传参也在熟练使用,也开始喜欢使用函数了,在报错的时候就可以直接去找报错的函数,让我自己在看自己代码的时候效率高了起来。
以上就是我写完c高级之后的感想了,我印象最深的一句话就是对函数指针,指针函数,数组指针,指针数组等等这些的认识,老师说最核心的就是名字的末尾,所以我在认识这些的时候就是从它们的末尾去理解,比如函数指针就是指针指向一个函数。