`
teamojiao
  • 浏览: 350411 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

为什么每个程序员都要学C语言的五个理由

阅读更多

1,C语言不是面向对象语言。因为这一点,任何学习C语言的人必须学会用函数思考问题。当你真正的去学习一门面向对象语言时,就会有C语言的函数学习基础去对比。这会使学习面向对象编程更容易理解和更有乐趣。


2,用C编程就像进行智力体操。你要顾及到每一件事情,而这在很多其他语言中他会为你处理。你要管理指针,内存分配,和内存回收。你要明白如何处理串,还有动态数据。在其他语言中,所有这些对你来说是隐藏的。你不知道他们如何运行,更不用说改变他们的运行方式了。你得到了使用的便利,失却了对程序的控制和速度。很多情况下,这是笔值得的买卖。其他的情况下就不是这样了。


3,不同情况下你会使用不同的编程语言。某些情况下要求使用Lisp,其他的要Java,还有别的要C++。但是C是你坚实的基础。你可能不会使用它做一些项目,但是它会帮助提高你的能力,熟练的用其他语言编程。


4,除了汇编语言之外,C代码生成的程序比其他任何语言生成的程序来得更小和运行更快。那么为什么不学汇编语言呢?汇编是一门学了很有用的语言,但是它没有C那样的可移植性,并且其他流行的语言比如JAVA的语法是基于C的,而不是汇编。你仍然应该学汇编,但它并不会证明它会像学C那样有用。


5,如果你想要写一个视频游戏引擎或操作系统,你会需要C。你不能使用C#, Java, 或 Basic来完成这些编程任务。

分享到:
评论

相关推荐

    你必须知道的495个C语言问题 面试必备 编程必备 C语言程序员必备

    使用清晰的函数名称,并确保每个函数都有明确的目的。 **1.4 `extern`在函数声明中是什么意思?** `extern`关键字用于声明一个在其他地方定义的变量或函数。当在一个文件中声明另一个文件中定义的函数时,通常会...

    从问题到程序-程序设计和C语言.pdf

    函数抽象能帮助程序员理解如何将复杂问题简化为多个简单步骤,从而使得问题更易于管理和解决。 除了函数抽象,书中还通过实例探讨了程序的时间复杂性和空间复杂性,即通过统计程序运行时间,分析程序的执行效率,...

    c语言,一种通用的、面向过程式的计算机程序设计语言

    每个新版本都增加了对语言特性的支持,包括更复杂的类型、更丰富的库函数以及更严格的语法规则。尽管如此,C语言的核心原则和特性始终保持不变。 ### C语言与C++ C++是对C语言的一种扩展,它保留了C语言的核心特性...

    c语言及c++入门学习(全).doc

    **2.5 为什么学习C/C++** - C/C++在系统编程、游戏开发、嵌入式系统等领域有着广泛的应用。 - 掌握C/C++对于成为全面的程序员非常重要。 #### 三、计算机原理与重要概念 **3.1 计算机原理** - 计算机由硬件和软件...

    嵌入式系统C语言讲座

    - **主函数**: 每个C程序都必须包含一个`main()`函数。 - **语句结尾**: 所有命令行必须以分号结束。 **1.10 C语言函数** - **结构**: 函数由返回类型、函数名称、参数列表和函数体组成。 - **局部变量**: 函数...

    C-Primer-Plus(第6版)(中文版)1

    《C-Primer-Plus(第6版)(中文版)1》是一本...每一章节都包含小结、复习题和编程练习,旨在帮助读者巩固所学知识并提升实践能力。通过学习这本书,读者可以建立起坚实的C语言基础,并具备独立编写和调试C程序的能力。

    程序员面试大全 相关面试宝典

    5. **构造函数调用顺序**:构造函数的调用是从基类到派生类,每个构造函数都会设置自己的VPT。如果构造函数是虚的,可能导致通过中间类的vtable调用,而不是最终的vtable。 接下来,我们讨论析构函数可以是虚函数的...

    gun c语言 编码标准

    每个选项都应该有一个简短的描述,并且要按照逻辑顺序排列。 **4.8 内存使用** 内存管理是C语言编程中的一个重要方面。程序员应该关注如何有效地分配和释放内存,避免内存泄漏和其他常见问题。 **4.9 文件使用** ...

    Linux C编程一站式学习.chm

    尽量做到每个知识点直到要用的时候才引入。过早引入一个知识点,讲完了又不用它,读者很快就会遗忘,这是不符合认知规律的。 这是一本从零基础开始学习编程的书,不要求读者有任何编程经验,但读者至少需要具备以下...

    工业标准的C编程规范

    - **可追溯性**:确保代码的每个部分都能追溯到具体的规范要求,方便后期审计和验证。 #### 三、MISRA-C的范围与适用性 **3.1 基本的语言问题** MISRA-C规范覆盖了C语言的核心特性,包括但不限于: - 标识符命名...

    如何像NASA顶级程序员一样编程——10条重要原则.docx

    5. **适当的断言使用**:断言密度平均每个函数不超过2个,用于检查程序中不可能发生的异常情况。断言不应有副作用,失败时需有明确的恢复机制,静态工具应能证明断言不会永远失败或永不触发。 6. **数据对象的作用...

    MISRA C:2012手册原版+中文翻译版

    在《MISRA C:2012 Guidelines for the use of》这份文档中,详细解释了每个规则的背景、目的、适用范围以及如何遵循。中文翻译版则为国内程序员提供了更方便的理解途径,使得理解这一规范变得更加容易。 C语言编程...

    (1912制作)C语言笔试题集之3(103页)

    - **题目描述**:解释为什么C++中的构造函数不能是虚函数。 - **相关知识点**: - 构造函数不能是虚函数的原因在于对象的构造必须先于其继承层次结构中的派生类构造完成。 - 如果构造函数是虚的,则会导致不确定的...

    C++编程开发学习的50条建议

    ### C++编程开发学习的50条建议解析 #### 1. 把C++当成一门新的语言学习(和C没啥关系!) - **解析**:虽然C++是从C语言发展而来的,但两者...不要急于求成,要耐心地规划和实现每一个细节,这样才能写出可靠的代码。

    学习C++的五十条忠告

    ### 学习C++的五十条忠告 #### 1. 将C++视为一门全新的语言 - **理由**:虽然C++源自C语言,但它引入了许多新特性,如类(class)、模板...通过持续的努力和正确的学习方法,每个人都能成为一名优秀的C++程序员。

    C和C++编程心得

    每个人都可以通过努力成为优秀的程序员。 - **资源利用**: 利用在线课程、书籍、编程社区等资源,找到适合自己的学习路径。 **还一定要有台电脑么** - **硬件需求**: 虽然拥有个人电脑有助于编程学习,但在初期...

    聊天室代码 以及实训报告

    C语言通过pthread库可以实现多线程,每个线程对应一个客户端连接,处理其发送的消息并广播到其他客户端。 3. **数据结构**:为了存储在线用户和消息历史,开发者可能需要使用链表、队列、树等数据结构。例如,链表...

    《linux内核注释》

    提供一个对每个子系统功能的一般性概述。 3.研究各个子系统主要的函数和数据结构。 4.对开发者应怎样通过修改源代码来改进和扩展内核提出建议。 本书的最后一项目标—定制--是你学习内核代码的最有说服力的...

Global site tag (gtag.js) - Google Analytics