C语言可以用来干嘛?

慕鸢灬静辰 2018-06-16 123 c语言 操作系统开发
感觉黑色边框做不出什么炫酷的东西,顶多用ACLLib画个图什么的,那么C有哪些用途呢?
其他回答

………………分割线………………

20180209晚上的时候,破百赞了,截个图庆祝一下:


当然讨论也算热烈的,学过《计算机系统结构》的同学,应该都清楚,计算机在逻辑上分层设计的,底层只给上层提供接口,具体实现对上层透明;上层只知道底层做什么,但不知道怎么做。目的就是为了简化开发流程,同时也可以让开发人员专注自己这一层的业务,不要分心。

大家都是社会主义的建设者和接班人,只有分工不同,没有贵贱。每个人生来都是不同的,长相不同,天赋不同,智商也不同。我想说高智商的人士存在的,从硬件层到应用层样样精通,但是我智商不够,不论兴趣还是经验都已经扑在嵌入式行业13年了,其他层次的东西,太高了,真的上不去。

走入计算机行业的你,一定有适合你层次的工作,让你实现自我。

再说说我个人的一点感想吧。

有一个规律叫8020规律,就是说

解决80%的问题,只需要20%的知识,至少在嵌入式这一行,这个规律是可以说明问题的。

你只要有简单的C语言知识,给你一个搭个51的开发板,就可以让你做出一个闪烁的LED灯来,再通过串口发送一个“hello world”也不是难事。所以入门的门槛跟应用开发程序员的难度差不多。你可以解决80%的问题。

但是这80%的问题解决了,仅仅只是入门,做出来的东西基本只有观赏价值,没有应用价值。接下来你需要继续深入:再学习16%的知识,去解决16%的问题;再学习12.8%的知识,去解决3.2%的问题……

所以你会发现,哪些“经验丰富”的工程师,并不比你知识上多多少,能解决的问题也不比你多多少,但是人家就是比你牛,有些问题你两天搞不定,人家一上午就搞定。


…………………………分割线……………………

做为一个03年开始学C,毕业后当了十年的C打字员的我,可以负责任的告诉你。

当硬件资源非常有限、而自己智商太低又理解不了汇编的时候,C机乎是唯一的选择。

当然如果只用C而不搞汇编,就好像聘礼下了、婚礼办了、衣服都脱了,最后却让隔壁老王上了婚床。

………………分割线………………

计算机语言越来越高级、越来越接近自然语言,实现复杂功能所需的代码量越来越小,造成的结果就是,似乎计算机就是这个样子。

网络编程的时候,似乎打开socket,建立连接,收发数据,一切都那么自然,似乎世界本应如此,他不会去问:“数据链路层发生了什么?物理层发生了什么?云端无数的路由器、交换机发生了什么?”因为在网络层看来, 这一切都不存在,这一切都是透明的。

键盘上敲下一个字符,屏幕上就显示了,一切都那么理所当然,他不会去问:“键盘里发生了什么?ps2/usb接口上发生了什么?字库从哪里来?怎么送到VGA?显示器里又发生了什么?”在应用层看来,这一切都不存在,是透明的。


……………………分割线……………………

刚才又仔细看了一下问题,高级语言的出现,把很多复杂的操作以接口的形式出现。在很多高级语言中,简单到拖拖鼠标、调几个函数就能出来一个窗口。但这简单的背后是多少底层工程师的心血,这些心血的外在表现就是一个个封装好函数接口,操作一单封装成接口,对于调用人员来说,那些本来很复杂的操作就是透明的,他们不需要知道接口做了什么。他们不知道底层做了什么很正常,我们封装接口的目的,就是为了操作透明化,但不能就因此就觉得底层没用。

用C语言写东西,我得另外告诉你一个事实,有个黑色边框已经很炫酷了,更多的时候,连个黑边框都没有。大多数时候,没有设备,没有任何视觉输出,比如这样的设备:

或者为了让界面友好,输出是这样的(图片来源为网络,如有侵权,请联系我,24小时内删除):

还有可能是这样的:

郭择适 2018-06-16 08:18:37 0条评论
你竟然问c语言能干嘛,整个计算机界的基石都是c语言搭建的,现在有这么多语言都号称要取代c,可是没有一个能做到,反正你想做的东西都能用c做。
我也列举一下纯c语言的实际用途吧:
1,写操作系统,linux,windows等常见操作系统的内核,驱动。
2,高性能的web服务器如nginx。
3,常见数据库,缓存数据库,如redis,sqlite。
4,常见高级语言解释器如python,ruby。
5,生活中各种智能设备物联网设备中运行的操作系统和应用,如家用路由器,摄像头。
6,各种应用程序你都可以使用c来开发,比如linux系统下的绝大部分命令程序和工具都是c开发的,包括你用的ls,cat,tcpdump等等。
还有很多我实在列举不完,你可以看看整个gnu开源组织下的大部分东西都是c语言搞的,上至用户应用,下至系统底层,都能用c来构建,你说c语言强不强大。
热心网民 2018-06-16 08:18:37 0条评论
相关问答