网友电子产品设计方案说:
C语言能干什么?回答这个问题应该先思考一下你想用C语言来干什么?
C语言是一门历史非常悠久的语言,C语言非常的简洁紧凑、灵活方便;数据类型和运算符号者非常的丰富;可以直接的操作物理地址,非常适合对硬件直接操作;生成的目标代码质量和运行效率也非常高。C语言广泛应用于各种单片机的嵌入式系统开发,现在90%或以上的单片机的程序都是用C语言去开发的。操作系统的底层驱动基本上也是用C语言开发的。但如果想用C语言来开发软件和游戏也是可以的,但软件和游戏会有大量的操作界面,用C语言来开发可能效率就会低很多,但软件和游戏的开发过程中涉及到底层和高效运行的部分也是离不开C语言的。
关注头条号@电子产品设计方案,大家一起享受学习和交流的乐趣!记得评论区留言哦!
网友C语言答疑课堂说:
C语言能干很多事,往往别的编程语言不能干的事C语言很轻松就解决了。这里我说一个程序员朋友的例子。这名程序员做的是android手机研发,开发方向是做视频播放器类的。有一次产品经理丢来一个需求,就是用户在看视频的时候可以一键截图。这个截图可不能用android自带的屏幕截图功能,必须得是播放器自带的截图功能。程序员做上层应用开发比较久,android框架类也比较熟悉,所以第一反应就是去找有没有截图的方法可以用。让人失望的是找了半天都没有找到一个完美的截图方案的框架类。于是在网上搜索、发帖咨询等都没有找到。后来是一个高级程序员无意中提到了ffmpeg这个项目,是一个纯粹用C语言开发的音视频编解码的项目。好多流行的播放器在编解码方面都是调用的ffmpeg的功能。注意哦,这个ffmpeg完全是用C语言开发的。有了这个思路之后,下面的事情也就简单了,让上层的Java代码调用ffmpeg的C语言代码库。要把ffmpeg编译为一个静态库包含在项目中,利用Java的native机制调用C语言静态库即可。这个C语言静态库中包含着各种各样的音视频编解码库,于是程序员完美地完成了这个需求。所以C语言也许不像其他编程语言那样可以做出精美的界面,但是很多贴近硬件的、复杂的功能除了C语言就是做不出来,最后还是得找C语言的解决方案。
网友用户1909287761493说:
我们团队一直主要用c/++c开发,当然用途也很多,一般对性能要求很高的库必然都是c/c++开发的。主要用途:1,图像算法2,底层软件3,高性能后台服务4,系统底层开发5,嵌入式系统6,单片机系统7,一些基础库,比如视觉库,python库等
网友嵌入式Linux技术分享说:
大学生的必修课
C语言是本科阶段大多数专业的必须科,大学阶段最重要的证书之一计算机二级证书大多数人也都是选择的C语言方向。据我了解大学的理工科专业在大一阶段都会学习C语言这门课,而且还是一门必修课。C语言作为一门低级语言,采用面向过程的编程思想,相对来说比较简单,所以才会作为入门级编程语言,也经常作为学习其他语言前必须先学习的基础语言。
那些C语言编写出来的产品
智能穿戴产品:手环,手表,VR/AR眼镜。现在智能穿戴产品基于它们的便携、智能等优点,在我们身边已经越来越普及了,那么这些产品的构成,离不开C语言编写的各种驱动、算法等。嵌入式产品:交换机,路由器,服务器,车载电脑,智能音箱,智能家居,机器人,无人机。软件系统:windows操作系统,Linux操作系统(Ubuntu、Redhat),游戏。
那些C语言相关的工作
嵌入式软件工程师嵌入式软件工程师通常做一些网络服务,数据交互等方面的工作,比如做路由器、交换机等都需要嵌入式软件开发工程师。Linux/Android驱动开发工程师Linux驱动不用说,肯定是用C语言开发的,那么Android的底层是Linux,所以Android的底层驱动同样是C语言写的。window驱动开发工程师windows系统大部分是c写的,所以基于windows的开发大多也都是C开发,比如很多的上位机程序。单片机开发工程师、Linux内核工程师、游戏开发工程师...
总结
C语言作为一门低级语言,基于其运行效率高等特点,在智能电子产品中应用非常广泛,小到一个纳米级的芯片,大到航空航天产品,都需要用到C语言。同样,学习C语言就业也是很广泛的。
网友江南一散人说:
从功能上来讲,任何其他编程语言能够做的事情,C语言都可以做到。对于入门来说,推荐学习C语言,毕竟这是绝大多数程序员的入门语言。C语言语法简单,易于学习。现在广泛流行的绝大部分语言,如Java、Python、Lua、Javascript、Go等这些编程语言,都是在C语言的基础上衍生而来的。而且,这些语言开发在之出的第一个版本的编译器,往往也是采用C语言开发的。因此,这些语言能够实现的功能,C语言全部都可以实现。但是,随着计算机技术的发展,现代软件项目的规模越来越大,实现的复杂程度越来越高,软件开发周期越来越长。有些大的软件项目,可能需要几千人花费几年的时间来开发。在这样的背景下,为了提高开发效率,缩短软件开发周期,降低软件的维护成本,一些更为高效的语言应运而生。注意,这里说的高效,是指开发效率,不是软件运行效率。现在流行的高级语言,如Java、Python、Go等,相比C语言来说,提供了很多提高开发效率的高级特性,如面向对象、动态类型、垃圾回收等。这些特性大大缩短了软件的开发难度,降低了开发成本。
小结
简单总结一下,C语言适合开发一些对性能要求很高的的系统软件,如BIOS、操作系统、编译器、数据库、基础库等。其他诸如Java、Python等语言,适合开发规模较大、复杂度高、对性能不是非常敏感的上层应用软件。
一些入门的建议
很多想学习编程或者刚开始学习编程的童鞋,往往会纠结于什么编程语言是最好的,最好的IDE工具是什么,或者哪个版本的语言最好用等等诸如此类的问题。当然,尚未入门的童鞋,对编程还没有什么很具体概念,这些问题也在情理之中。但是,对于入门来说,最重要的是培养对编程开发的兴趣,尽快找到编写程序的感觉。可以适当了解一下各种编程语言的特点,但是不要过于纠结。我的建议是,选择一个绝大多数程序员入门的语言(通常是C或Python),然后从最简单的“Hello World”开始,由浅入深,循序渐进,尽快了解并掌握语言的基本语法,然后逐渐培养程序开发的兴趣和感觉。做软件开发这一行,个人认为兴趣是最重要的,有兴趣才会有动力持续、深入的学习。一旦没有了兴趣,技术上不可能达到很高的乘次,编程也会变成一种煎熬。希望对你有用!对编程开发感兴趣的童鞋,欢迎关注我!