学习C的几点体会

时间:2023-01-04 16:29:56
1 C 都是对内存的操作, 并且通过传值和传址的方式来进行提高效率,从而让程序在执行中间减少不必要的开销
2 由于C的*程度非常大,从而在用的人不太熟悉,或者说考虑不周全的时候,会引起整个系统的崩溃
3 每次取到的值都需要放在一个内存里面,然后用一个指针来进行记录所放的位置,通过控制指针来操作对应的内容
4 好处是对于缓冲这种东西,C写的足够好的时候,效率和稳定都能得到绝对的保证,就是说所有的东西都是自己在掌握
缺点是事无巨细都需要自己注意,C不提供任何哪怕是一点的帮助,空指针,内存泄漏,在其他更为高级语言很少出现的BUG,成了C最主要的问题

适用:对于效率和资源非常苛刻的产品,主要是体现是及时性和海量,及时性比较典型的就是聊天室,直播间,海量主要是短时间的高并发访问,在数据上又有很高的要求,这个具体到产品如缓冲和搜索
另外学习C 最大的好处就是思维的严谨,很多以前不太清楚的细节都有了很清楚的了解,很多地方以前学JAVA不理解的,现在理解起来容易多了,这个使我想起老师讲语 言,学英文最好是先学什么,最后推断是需要学习古埃及语,而这个语言现在已经失传了,这个当然是个玩笑了,只是说明基础重要。呵呵,所以感觉如果学到一定 的时候,效率还需要进一步的提高汇编是又必须拣的东西,一个哥们和我说过视频压缩那一块,中间有些地方必须用到汇编,中间乘法需要改成位移来解决,这样效 率高很多,中间某些地方必须用到寄存器这个东西,减少对CPU的占用率,AX,BX, 这些回想起来很遥远的东西,而当时就学的气闷,现在还需要回头看
另外就是对于JAVA的理解,这个语言现在回想起来确实是一个很不错的东西,效率略微低了一点,只是和他给程序员减少的工作量来看,他这个是值得的,就像 一个工程一样,就是各个点利益的平衡,JAVA在这一点把握的很好,他通过降低一点效率,来提高整个程序员的工作效率,使代码的工作量都把握的很好,所以 流行起来是非常正常的
还就是PHP这种语言, 现在看起来是对C的封装,很多细节地方他比JAVA把握的好的多,这一点来说JAVA需要向他学习,只是正是由于这种细节的处理太好了,他缺乏大方向的把 握,就像一个绣花的枪,感觉精致,舒服,可真的打起大的仗,还是那种M16,或者爱国者导弹一样的东西比较放心,比方说JAVA
几种语言感觉就是
PHP: 有点象左轮手枪,短,平,快,很快就能上手,容错很强,卡壳了退出来就OK, 做到高手很难,做到真正高手,并不是对左轮的使用,而是准星很好,枪枪致命
JAVA:有点象M16, 这种名兵器,好用,就是爱坏,而且不太好修,把握好了,起码是个中等高手,做到真正的高手,需要对兵器本身和兵器外的东西都需要了解
C : 就是当今的倚天长剑,很容易就能舞动起来,可你真的指望用这个东西去杀人,且炼,因为太多拿着左轮或者m16的人了,而且很麻烦的是这个东西是双刃的,你 用的不好很容易伤到自己,或者说伤到你的同伴,容易招人白眼,写的这是什么东西,把系统都搞死了,只是他很*,到了一定的高手的境界,就像灭绝师太一 样,一声长啸,抽出倚天剑,杀入敌阵,如同砍瓜切菜一般,敌人纷纷倒下。这种效率比枪高的多
所以看到很多争论说那个语言怎么样,就是一个很荒谬的事情,具体的事情具体分析