您当前的位置:首页 > 计算机 > 编程开发 > VC/VC++

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

时间:12-26来源:作者:点击数:
在计算机高速发展的最近几十年中,出现了上百种编程语言,有的编程语言是针对某个领域专门设计的,例如:
  • PHP 专门用来开发网站后台;
  • JavaScript 最初只能用于网站前端开发,实现一些网页特效,后来有“好事的”程序员将它移植到服务器上,才赋予 JavaScript 网站后台开发的能力;
  • Objective-C 和 Swift 只能用于苹果产品的开发,包括 iPhone、iPad、Mac、MacBook 等;
  • Visual Basic(VB)专门用来在 Windows 平台下进行软件开发。
而大部分的编程语言不是针对某个特定领域设计的,它们能做很多事情,比较通用化。但是在长期的实践过程中,这些编程语言也找到了适合自己的位置,例如:
  • Java 可以用于网站后台开发、Android 开发、PC软件开发,在大数据领域也分得一杯羹;
  • Python 主要用于系统运维、网站后台开发、数据分析、人工智能、云计算等领域;
  • Go语言除了用于服务器、通讯等较底层的开发,还能用于网站后台开发。
C语言也是一门通用性的语言,并没有针对某个领域进行优化,就目前而言,C语言主要用于较底层的开发,例如:
  • Windows、Linux、Unix 等操作系统的内核90%以上都使用C语言开发;
  • 开发硬件驱动,让硬件和操作系统连接起来,这样用户才能使用硬件、程序员才能控制硬件;
  • 单片机和嵌入式属于软硬件的结合,有很多使用C语言的地方;
  • 开发系统组件或服务,用于支撑上层应用;
  • 编写PHP扩展,增强PHP的功能;
  • 如果对软件某个模块(例如算法和搜索部分)的效率要求较高,也可以使用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语言类似,C++也是一门通用性的语言,主要用于PC软件开发、服务器底层开发、游戏开发等。

C++和C语言之间有着非常模糊的界限,很少有只会C语言的程序员,往往还需要掌握C++,以提高开发效率。

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

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

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门