了解有关C编程的知识:为什么这种语言仍然占主导

披露: 您的支持有助于保持网站的正常运行!我们会为此页面上推荐的某些服务收取推荐费.


编程语言塑造了我们周围的世界。从口袋里的智能手机到航空公司导航软件,几乎所有现代设备都以某种方式利用代码.

关于哪种编程语言最有影响力存在争论。但是最有力的竞争者是C。它是Unix操作系统的中坚力量,为开发面向对象的程序设计铺平了道路。.

C已经成为C ++,Objective-C,C#,Java,JavaScript,Perl,PHP,Python以及其他无数影响力的主导根源。该语言由丹尼斯·里奇(Dennis Ritchie)在1969年至1973年之间于AT创作&贝尔实验室.

它是允许操作系统使用“高级”语言进行创作的第一种语言。这意味着从多种类型的硬件获得高级功能所需的专业知识较少.

它允许Unix操作系统完全重新启动,使其成为最早的便携式OS平台之一。用于两台不同计算机的编译器可以在两者之间“移植” C代码并在两台计算机上工作,这是一项突破性的成就.

C可以用来做什么?

C编程语言是一种用途广泛的通用语言.

尽管C被认为是高级语言,但与大多数其他语言相比,它与硬件的距离要近得多。因此,许多甚至比C“更高”的语言都将使用C进行编译(例如Python)。 C的一些主要用途包括:

  • 操作系统

  • 语言编译器

  • 语言翻译

  • 组装工*

  • 设备和驱动程序

  • 数据库和实用程序.

*汇编器是用于低级“汇编语言”的控制器,该汇编语言使用CPU级别的编码语法来创建机器代码,该代码是纯二进制的.

介绍和概念理解

开始编写程序需要了解C的基础概念。.

  • C程序设计导论

  • Computerphile —“ C”编程语言:Brian Kernighan.

C,C ++,Objective-C和C#之间的区别

这四种不同的编程语言都具有非常相似的名称,但是每种语言的操作方式和用途有很大不同。.

  • C是非常原始的语言,几乎是所有计算机上都使用的“便携式”语言,用于运行编译器和控制操作系统的核心功能.

  • C ++创建于1979年,由于引入了带有类的面向对象编程的方式,因此最初称为“带有类的C”。 C ++与C具有相同的标记语法,除了它使用类和创建对象这一点外,其他非常相似,这是纯C不能做到的.

  • Objective-C始于1983年,但最近才流行起来。它已成为OS X和iPhone应用程序的推动力,并且可以被视为C语言的超集。与C ++相似,它使C更加面向对象。仅限于Apple硬件.

  • C#(发音为see-sharp)是由Microsoft于2001年创建的,它们是.NET平台上首要的面向对象新语言。 C#实际上与C没有太多共同点,C#更像是Java平台的竞争对手。当时,Microsoft一直使用#标记命名语言,因此A#,F#是其他语言。格式和库管理与C有很大不同。此外,C#几乎不像C那样接近机器代码。(尽管C#可以通过Microsoft中间语言MSIL以有限的方式处理机器代码。)

这里有一些地方可以了解有关这些差异的更多信息:

  • C,C ++,C#和目标C — Skillcrush

  • 我应该在学习目标C之前学习C还是C ++? —易用的帮助.

学习C的最佳资源

介绍不同语言的概念和知识非常有用。但是一旦您决定学习C对于您来说,下一步就是寻找资源来学习C.

有各种各样的在线视频讲座,演示和虚拟课程可以为您提供帮助。此外,您还将希望获得一个可以正常工作的编译器或交互式开发环境(IDE),以便您可以实际开始编码.

在线课程和教程

  • Learn-C.org:具有交互式编码窗口的绝佳网站.

  • CProgramming.com:通过教程,测验和参考资料学习C和C ++.

  • WiBit.NET C课程:交互式视频,也可以在Apple和Windows商店中获得.

  • 使用C进行实用编程— MIT开放式课件:来自世界上最好的学院之一的免费讲座.

  • 卡尔·赫罗德(Carl Herold)的《面向所有人的计算机科学》:YouTube播放列表,其中包含完整的演练说明.

有用的书籍和指南

  • C编程绝对入门指南:Greg Perry & 迪恩·米勒.

  • C编程语言第二版:Brian W. Kernighan.

  • 艰难地学习C :(遇到难题的电子书).

C的IDE和编译器

大多数IDE都可以处理C和C ++。根据IDE项目的设置方式,您可能需要手动将文件命名为.C而不是.CPP.

  • Eclipse IDE:跨平台.

  • Netbeans IDE:跨平台,在Java上运行.

  • 代码::块:C,C ++,Fortran IDE,跨平台.

  • CodeLite IDE:C,C ++,PHP,NodeJS IDE.

  • Visual Studio:仅Windows,但非常可靠的调试器.

  • Gnu编译器集合— GCC:适用于C,C ++,Objective-C等的命令行编译器;跨平台.

  • lcc-win:弗吉尼亚大学的Windows C编译器.

社区资源

如果您打算专门研究某个特定的编程领域,那么最好找到人们共享您兴趣的在线社区.

例如,如果您正在开发硬件,请尝试找到此类硬件的论坛。这将允许您开始与其他开发人员建立关系.

在社区中建立角色是推进编码的一种好方法。您还将希望更广泛地与其他C程序员进行交互。以下是一些可用于此目的的工具和社区资源:

  • 堆栈溢出(标记为C):仅仅是解决问题和解决问题的最佳资源.

  • C板— Cprogramming.com:建立良好的留言板,拥有许多活跃的用户和很多有用的线程.

  • C和C ++论坛— dreamincode.net:更专注于C ++,但是有很多好的信息.

  • ProgrammingForums.org:应用程序开发论坛.

您还可以在Meetup.com,eventbrite或其他事件应用程序上寻找您所在地区的本地开发人员聚会。寻找真正的开发人员进行面对面的交流可以极大地加快学习速度.

我下一步该怎么做?

刚开始时要做的最重要的事情就是确定目标。涵盖广泛主题的通用资源将始终可用且易于查找,但是随着您的技术水平提高,将很难快速找到答案。.

设定目标,学习基础知识并在社区的帮助下进行专业化。开始一个项目,进行实验,学习并成长.

祝你好运!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map