您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
C语言能干什么?
语言,都是,嵌入式C语言能干什么?
发布时间:2016-12-08加入收藏来源:互联网点击:
问题补充: C语言学好了之后能应用到哪些地方呢?可以编写游戏和软件吗?
回答于 2019-09-11 08:43:50
回答于 2019-09-11 08:43:50
C语言能干什么?回答这个问题应该先思考一下你想用C语言来干什么?
C语言是一门历史非常悠久的语言,C语言非常的简洁紧凑、灵活方便;数据类型和运算符号者非常的丰富;可以直接的操作物理地址,非常适合对硬件直接操作;生成的目标代码质量和运行效率也非常高。
C语言广泛应用于各种单片机的嵌入式系统开发,现在90%或以上的单片机的程序都是用C语言去开发的。操作系统的底层驱动基本上也是用C语言开发的。
但如果想用C语言来开发软件和游戏也是可以的,但软件和游戏会有大量的操作界面,用C语言来开发可能效率就会低很多,但软件和游戏的开发过程中涉及到底层和高效运行的部分也是离不开C语言的。
关注头条号@电子产品设计方案,大家一起享受学习和交流的乐趣!记得评论区留言哦!
回答于 2019-09-11 08:43:50
虽然是BAT的Java开发工程师,但毕竟也是某985计算机专业的本硕毕业生,我可以说C语言是编程领域最基础最重要的语言(比Java还基础的多)。
本科生必修
首先,C语言是本科生的必修课。在学习算法,数据结构等重要课程之前,首先要学C语言,可见是被视为最基础的工具。C/C++是偏向底层的语言,把高级语言的基本结构与语句和低级语言的实用性结合了起来,使它可以像汇编语言一样对位,字节还有地址进行操作,当然,这种操作对于初学者来说有时会导致程序错误或者崩溃。
系统相关
然而正因C语言具有偏向底层的特点,因此可以作为工作系统的设计语言编写系统程序,比如我们常见的嵌入式系统。嵌入式系统其实与我们的生活息息相关,大到汽车,小到豆浆机,里面都有嵌入式芯片,通过C语言来将人类的操作转化为机器语言,操作这些家用电器。
除此之外,学好了C语言,就是学到C在Linux里的应用,而Linux众所周知是一个非常稳定与强大的操作系统。
程序设计
C语言具备很强的数据处理能力,在各类程序设计以及科研上都需要C语言,还能编写三维,二维图形和动画,甚至能够编写windows病毒。当然上面都是非常复杂的场景了,对于一些简单场景,C语言也能胜任,比如高并发聊天室,万年历等等,基本上作为一个底层语言,C语言能够做到大部分上层编程语言能做到的事情(比如JAVA,PYTHON,PHP等等)。
游戏设计
最后,C语言也能进行游戏设计,简单的游戏如几年前很火的2048,愤怒的小鸟,五子棋,扫雷,复杂的比如腾讯网易家的很多大型游戏,比如王者荣耀,逆水寒,国外公司的战地等等,运行这些游戏通常对底层有更高的要求,因此代码里通常也会有C语言存在。
总的来说,C语言是一门非常重要且基础的编程语言,能够实现你的大部分需求。
以上是我的浅见,如果有帮助,欢迎给我点赞留言。
我是苏苏思量,来自BAT的Java开发工程师,每日分享科技类见闻,欢迎关注我,与我共同进步。
回答于 2019-09-11 08:43:50
近日,2019年4月份编程语言排行榜发布,如下图所示,由图中可以看出,C语言仅居Java之下,是使用率排名第二的编程语言。
C语言是很多计算机专业学习的第一门编程语言,之后就转学了Java/C#/C++,那C语言究竟能做什么呢?
其实很多非计算机专业的学生,如自动化、机械、信息等专业的学习也会学习C语言。
C语言在嵌入式上应用广泛。当前智能家居正火热,而智能家居属于嵌入式范畴,C语言在这一块应用广泛,不管是功能模块还是驱动(包括Android驱动),基本都是C语言实现(当然,现在Lua也能代替做一些东西,但整体上,C语言还是最主要的)。比如我曾经就写过一个智能指纹锁的几个功能,全是C语言。但嵌入式这一行有一定门槛,如果你不是相关专业并且没有很浓厚的兴趣,不建议入行。
Windows、Linux等操作系统大部分都是C语言写的,这个其他答案有提及,不再赘述。
那C语言为何能做这么多事?
我们知道,编程语言中,越低级的语言执行效率越高,机器语言(0和1组成)执行效率最高,其次是低级语言(汇编语言等),然后才是高级语言(C、C++、Java),其中低级语言是封装机器语言而来,高级语言又是封装低级语言而来,在这些封装的过程中虽然隐藏掉了很多细节,减少了开发难度,但执行效率其实是越来越低。
有趣的是,高级语言之间其实又有封装,比如C++是封装了C,Java是封装了C++,Python全是库,封装了更多。在这层关系中,C处于最底层,也就是说,在高级语言中C语言的执行效率相对较高。因此,即兼顾了可读性、又有执行效率的C语言自然应用广泛。
以上就是我对“C语言能干什么”这个问题的回答,我本人有较多的前端、后端、Linux服务器、微信小程序及嵌入式的开发经验,如还有什么问题,欢迎评论区提问或者邀请我回答。
回答于 2019-09-11 08:43:50
C语言能干很多事,往往别的编程语言不能干的事C语言很轻松就解决了。这里我说一个程序员朋友的例子。
这名程序员做的是android手机研发,开发方向是做视频播放器类的。有一次产品经理丢来一个需求,就是用户在看视频的时候可以一键截图。这个截图可不能用android自带的屏幕截图功能,必须得是播放器自带的截图功能。
上一篇:凯迪拉克CT6为什么叫好不叫座?
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |