学了 C 语言到底能做什么, 能从事什么工作?

前言

经常有小伙伴问我,你是做C/C++的,那学C语言可以做什么呢?尤其是还在学校的同学,感觉自己学了很久,什么也做不了,一度怀疑自己是不是不适合程序员这个方向。 开始我都是直接说可以开发嵌入式啊,做操作系统啊,开发数据库啊等等,说到这,其实大家就应该明白了,C语言是接近底层的,他的很多应用都是处在摸不着看不见的后台,这对于初学编程的同学确实太不友好了,大家都喜欢所见即所得的效果,要不python怎么这么火呢!

但是,作为编程排行榜经典不衰的语言,我还是想好好说下,到底学C语言可以做什么?

有数据为证 还是采用我喜欢的类比学编程的方法,这个也是学编程很好的方法之一,触类旁通的道理。

在计算机高速发展的最近几十年中,出现了上百种编程语言,有的编程语言是针对某个领域专门设计的,例如:

PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。 JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。​ Objective-C 只能用于苹果产品的开发,包括 iPhone、iPad、Mac、MacBook 等,Swift 改进了Objective-C,是一种新的编程语言,用于编写 iOS 和 OS X 应用。 Visual Basic(简称VB)是Microsoft公司开发的一种通用的基于对象的程序设计语言,为结构化的、模块化的、面向对象的、包含协助开发环境的事件驱动为机制的可视化程序设计语言。是一种可用于微软自家产品开发的语言。 在这里插入图片描述而大部分的编程语言不是针对某个特定领域设计的,它们能做很多事情,比较通用化。但是在长期的实践过程中,这些编程语言也找到了适合自己的位置,例如:

Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。Java 可以用于网站后台开发、Android 开发、PC软件开发,在大数据领域也有应用; Python是一种计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。主要用于系统运维、网站后台开发、数据分析、人工智能、云计算等领域; Go(又称 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 开发的一种静态强类型、编译型语言。Go 语言语法与 C 相近。Go语言除了用于服务器、通讯等较底层的开发,还能用于网站后台开发。 C语言也是一门通用性的语言,历史很悠久,就目前而言,C语言主要用于较底层的开发。 在这里插入图片描述 除了Windows、Linux、Mac、Unix等大型操作系统,还有freertos,ucos等嵌入式系统等操作系统的内核都使用C语言开发;

开发硬件驱动,这部分也是C语言的强项,当然也有很多C语言的就业机会;

单片机和嵌入式属于软硬件的结合,有很多使用C语言的地方;

开发系统组件或服务,用于支撑上层应用;

开发lua脚本,可以做到无缝衔接。

很多高级语言使用的库,底层也是C语言编写的,主要是考虑运行效率的部分。

当然,C语言也能用于PC软件开发,做出类似 QQ、迅雷、Chrome 等带界面的程序,但是由于C语言开发效率低,第三方库较少,实际项目中已经没有程序员这么做了,大家已经转向了 C++。

初学者的疑问

既然C语言能做这么多事情,为什么很多初学者学完C语言以后仍然非常迷茫,只能编写没有界面的控制台程序呢? 在这里插入图片描述 这是因为,C语言仅仅是一个工具,它的标准库也很简单,只提供了最基本的功能,如果希望开发出实用的程序,往往还需要学习其他方面的知识。例如:

开发硬件驱动要学习数字电路,了解 Windows 或 Linux 内核,阅读硬件厂商的接口说明书;

从事嵌入式开发要学习数字电路、模拟电路、ARM、Linux、Qt等;

开发PC软件要学习Windows编程,了解 GTK。

可以这么说,如果只会C语言,基本上是找不到工作的,读者要选定一个方向,继续学习其他知识。后面你会发现,C语言不过是冰山一角,是一项基本技能而已,程序员要学习的东西还很多。

另外,学习C语言并不一定要从事与C语言有关的开发工作。C语言是一门简单、底层、较早的编程语言,后来的很多语言在语法上都和C语言类似,称为“类C语言”,例如 Java、C++、C#、PHP、JavaScript 等,学完C语言再学这些语言都很容易上手。

并且,C语言能够让你更加深刻的认识内存和编译原理,了解程序的每一个细节,夯实基本功,站得“低”才能望的远,所以优秀的程序员都会学习C语言。


在这里插入图片描述

转载于:https://my.oschina.net/u/4159090/blog/3095881

### 回答1: 这个问题的答案取决于你想什么类型的工作。对于某些类型的工作,有些编程语言比其他编程语言更适合。例如,如果你想网站开发习 HTML、CSS 和 JavaScript 可能是更好的选择。如果你想数据分析,习 Python 或 R 可能会更有用。如果你不确定想什么,那么习一种流行的通用编程语言,如 Python 或 Java,可能是个不错的选择。 ### 回答2: 在找工作习编程语言时,选择哪一种编程语言是好的取决于个人兴趣、职业方向和行业趋势。 首先来看个人兴趣。程序员需要热爱编程,因此选择自己感兴趣的语言是很重要的。常见的编程语言有Python、Java、C++JavaScript等,每种语言都有其特点和应用场景。如果你喜欢数据分析和人工智能,Python是一个不错的选择。如果你想从事软件开发,Java常常是需要的编程语言。因此,根据个人兴趣来选择编程语言是很重要的。 其次是职业方向。不同的行业和职业对编程语言有不同的需求。例如,前端开发需要掌握HTML、CSS和JavaScript语言。如果你想从事移动应用开发习Java或者Kotlin会更有帮助。如果你对游戏开发感兴趣,C++可能是一个不错的选择。 最后是行业趋势。技术的发展迅速,某种编程语言在某个时期可能非常热门,但可能在之后的几年内逐渐被取代。因此,了解行业的趋势和动态是选择编程语言的重要因素。例如,人工智能和大数据分析正在兴起,所以习Python在就业市场上更有竞争力。 总结来说,找工作习编程语言时要考虑个人兴趣、职业方向和行业趋势。了解自己的兴趣和目标,同时也要关注行业的发展和市场需求,选择适合自己的编程语言才是最好的选择。 ### 回答3: 找工作习哪种编程语言好,需要根据个人的职业规划和行业需求来进行选择。以下是一些常见的编程语言供参考: 1. Java:Java是一种广泛应用于企业级开发的编程语言,适合开发大型系统和跨平台应用。Java开发人员在互联网、金融、移动应用等行业有很好的就业前景。 2. Python:Python是一种易易用的编程语言,广泛应用于数据分析、网站开发、人工智能等领域。Python的就业需求不断增加,尤其在数据科、人工智能等领域有很好的发展机会。 3. JavaScriptJavaScript主要用于网页开发,是前端开发人员必备的技能之一。随着移动应用和web技术的发展,掌握JavaScript的人才一直都有很好的就业机会。 4. C++C++是一种广泛应用于系统编程和游戏开发语言,对内存控制和性能优化有着较高的要求。C++程序员在游戏开发嵌入式系统、金融等领域有很好的工作机会。 5. Ruby:Ruby是一种简洁易读的编程语言,以Rails框架为代表的Web开发应用广泛。Ruby开发人员在初创公司和Web开发公司有较好的就业机会。 总之,选择习哪种编程语言要考虑到个人兴趣、行业需求和市场状况。掌握多种编程语言,提高自己的技能广度和深度,对找工作和职业发展都会有积极的影响。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值