我心目中的C

有必要先回忆一下计算机的简史。

一开始,人们在纸袋上打孔,然后输入进计算机。

那时的计算机CPU很慢,内存很小,没有操作系统。

纸袋打孔就是最原始的机器语言。

后来出现了机器语言的助记符,也就是汇编语言。

由于机器只认机器语言,所以人们需要汇编器。

于是人们用机器语言写了汇编器,由于可读性差,又用了汇编语言重写汇编器。

由于汇编语言只是助i记符,所以与机器语言等价,程序员不仅关心数据在内存中的位置,还得关心代码在内存中的位置。

后来出现了多任务,出现了虚拟内存,出现了文件系统,出现了各种各样的设备,于是出现了操作系统。

本来人们打算写出一种全新的操作系统,但是失败了,不过从此有了C语言。

此时人们需要C编译器。于是人们用汇编语言写了C编译器,又用C语言重写了C编译器。

或许C语言还不够高等,程序员依然要关心数据在内存中的位置,好在对代码在内存中的位置不用关心了。

为了方便使用,人们写出了C标准库,但目前看来,使用C标准库依然不方便,人们需要更多库。

C语言面向过程,语言本身不提供面向对象的机制,但由于C无所不能......

人们依然可以用C写出面向对象的程序,只是更复杂罢了。使用Glib,可以创建对象。

后来,好像人们发现C不适合写应用层上的程序,于是第三方C库很少。

但是,如果只用C写内核或驱动,C标准库用不上,于是C标准库快被人们淡忘了。

C语言可以用来写大型高效的服务器。好处除了高效外,就是可以方便地调用操作系统API。

另外用C写播放器也不错,好处依然是高效,毕竟音视频解码需要较快的速度。

用C写编辑器也不错,不是记事本,是功能超强大的那种,比如VIM。

但是,这些用C写的应用层程序都需要大量的开发时间。如果C有更丰富的库,一定会发展的更好。

C++除了有STL,还有Boost,不是道MFC能不能也算进去,毕竟他不开源。

除此之外,还有用C++写的框架:ACE。类似的东西C好像就没有。

所以,C程序员有时会很孤单,自己一个人慢慢封装操作系统API,封装数据库接口,封装一切看起来应该封装的东西。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值