DYKILY_FOREVER 发表于 2016-8-2 17:36:22

新人求助。

      本人是一名高一职教学生,选了计算机专业,很想学好C语言。但是学校的教育大家都懂,大多都是在使劲的讲算法以便考试。但是我想更加扎实掌握C,于是便买了很多前辈推荐过的一本书《C Primer plus(第五版)》,学习途中遇到了一点问题,希望大家能够帮助我,谢谢。
      
       以下是原文段:
      
      C编程的基本策略是使用程序将源代码文件转换为可执行文件,此文件包含可以运行的机器语言代码,C分两步完成这一工作:编译和链接。编译器将源代码转换为中间代码,链接器将此中间代码与其他代码相结合来生成可执行文件。C使用被划分为两部分的这一方法使程序便于模块化。您可以分别编译各个模块,然后使用链接器将编译过的模块结合起来。这样,如果需要改变一个模块,则不必重新编译所有其他模块。同时,连接器将您的程序与预编译的库代码结合起来。
      
      另一原文句:
      
      另外,多数C实现都有一个大型的库,其中包含有用的C函数。

红色的文字便是我需要大家帮助我去理解的地方。
      问题:
      1、C使用是什么意思?
      2、C实现又是什么?
      3、“C使用被划分为两部分的这一方法使程序便于模块化。”这里我并不知道c使用是什么,但按我的理解,我想知道这句话是否说明只有C语言在编译过程中,分为编译和链接两个步骤。但我通过网上的查询,模糊了解到的是,高级语言都需要链接。(新人概念模糊,有错误请您大方指证。谢谢!)
      4、“C使用被划分为两部分的这一方法使程序便于模块化。”依旧是这一句。为什么被划分为这两步能使程序便于模块化?虽然下文提到了原因,但还是不了解。我并不了解C编译的具体流程,所以我更想弄清楚的是,为什么将其分为两个步骤,才“可以分别编译各个模块,然后使用链接器将编译过的模块结合起来。”?如果这化为一个步骤,为什么又要重新编译其它模块。既然程序是模块化的,是由相互之间相对独立的模块组成,又为什么会被共同影响?

      以上便是我想要请教大家的地方,希望能够得到各位的帮助。这些问题可能只是我理解上的问题,看的角度错了(没办法,语文没学好),也可能是我对C根本上的认知错误(这就危险了,请大家帮帮我),但都希望大家能给予我帮助。如果各位嫌麻烦,而小甲鱼的视频上又有讲的话,请麻烦告诉我是哪一课,谢谢(因为我习惯先进行自主学习,再听老师讲解一遍)。本人比较啰嗦,如果你耐心把我的问题看完了,同样再次表示感谢。
      

       顺便放一张图让大家乐呵乐呵,开个玩笑。

      

DYKILY_FOREVER 发表于 2016-8-3 09:44:21

{:10_266:}{:10_266:}没有人愿意帮我吗................是问题太蛋疼了吗?

DYKILY_FOREVER 发表于 2016-8-3 10:32:18

对了,这几段就在书的第三页和第八页,有书的同学可以去看看~前两个问题应该不是翻译错误吧,但就是从来没听过这两个词,望前辈解答。

DYKILY_FOREVER 发表于 2016-8-4 13:40:10

然而这是第三天了..............

a9765312 发表于 2016-8-5 13:08:15

c语言使用编译和链接使程序模块化吧,实现的就是各个子程序之间能够组成一个完整的程序。还有每个子程序先编译再链接起来有助于万一某个模块代码有错误就可以直接去修改一个模块就可以了,不需要所有的模块都重新编译,不然效率很慢。如果代码有错查找也简单,找到其中一个模块修改完成就可以了。我就是这样理解的吧

小菜鸟222 发表于 2016-8-6 11:06:16

我也是新手,不懂啊
页: [1]
查看完整版本: 新人求助。