初识c语言

  • 选择c语言的理由
  1. 设计特性。C是一门流行的语言,融合了计算机科学理论和实践的控制特性。C语言的设计理念能让沟让用户轻松地完成自上向下的规划、结构编程和模块化设计。
  2. 高效性。C是一门高效的语言。在设计上,它充分利用了当前计算机的优势,因此,C程序相对于更紧凑,而且运行速度更快。
  3. 可移植性。C是可移植的语言。在一种系统中编写的C程序稍作修改或不修改就能在其他系统运行
  4. 强大而且灵活。C语言功能强大而灵活。C语言可以用于解决物理学和工程学的问题,甚至可以用于制作电影的动画特效。
  5. 面向程序员。C语言是为了满足程序员的需求而设计的,程序员利用C可以轻松访问硬件、操控内存中的位。
  6. 缺点。C语言非常灵活且自由。容易犯一些莫名奇妙的错误,例如,涉及指针的编程错误往往难以察觉。C语言紧凑简洁,结合了大量的运算符,易写出晦涩的代码。

  • 计算机能够做什么

现代的计算机由多种部件构成。中央处理单元(cpu)承担绝大部分的运算工作。随机存取内存(RAM)是存储程序和文件的工作区;而永久内存存储设备(过去一般指机械硬盘,现在还包括固态硬盘)即使在关闭计算机之后,也不会丢失之前存储的程序和文件。

CPU的工作从内存中获取并执行一条指令。然后再从内存中获取并执行下一条指令。CPU有自己的工作区——由若干个寄存器组成,每个寄存器可以存储一个数字。一个寄存器存储下一条指令的内存地址,CPU使用该地址来获取和更新下一条指令。在获取指令后,CPU在另一个寄存器存储该指令,并更新第一个寄存器存储下一条指令的地址。

两个知识:1.存储在计算机中的所有内容都是数字。

             2.计算机程序最终必须以数字指令码(即机器语言)来表示。

   机器语言编程的黄金时代已经过去。

  • 高级计算机语言和编译器

高级编程语言以多总方式简化了编程工作。首先,不必用数字代码来表示指令;其次,使用的指令更贴近你如何想这个问题,而不是类似于计算机那样繁琐的步骤。使用高级编程语言,可以在更抽象的层面表达你的想法,不用考虑CPU在完成任务时具体需要哪些步骤。例如,对于两数相加:total=mine+yours;对于我们而言,光看这行代码就知道计算机要做什么;而看用机器语言写成的等价指令(多条以数字代码形式表达的指令)则费劲的多。但是对于计算机而言却恰恰相反。在计算机看来,高级指令就是一推无法理解的无用数据。编译器在这里派上了用场。编译器是把高级语言程序翻译成计算机能理解的机器语言指令集的程序。程序员进行高级思维活动,而编译器负责处理冗长的乏味的细节工作。

简而言之,高级语言(如Java,c)以更抽象的方式描述行为,不受限于特定CPU或指令集。而且,高级语言简单易学,用高级语言比用机器语言编程容易得多。

  • 使用C语言的七个步骤
  1. 定义程序的目标。在动手写程序之前,要在脑中有清晰的思路。想要程序去做什么首先自己要明确自己想做什么,思考你的程序需要哪些信息,要进行哪些计算和控制,以及程序应该要报告什么信息。在这一步骤中,不涉及具体的计算机语言,应该用一般术语来描述问题。
  2. 设计程序。对程序完成什么任务有概念性的认识后,就应该考虑如何用程序来完成它。例如,在用户界面应该是怎样的?如何组织程序?目标用户是谁?准备花多长时间来完成这个程序?除此之外,还要决定在程序中如何表示数据,以及用用什么方法处理数据。
  3. 编写代码。设计好程序后,就可以用代码来实现它。在这一步骤中,可以给自己的程序添加文字注释。
  4. 编译。编译器是把源代码转化成可执行代码的程序。可执行代码是用计算器语言表示的代码,这种语言由数字码表示的指令组成。C编译器将源代码与C库的代码合并成最终的程序(更精确的说,应该是由一个被称为链接器的程序来链接库函数,但在大多数系统中,编译器运行链接器)。
  5. 运行程序。可执行文件是可运行的程序,最终生成的程序可通过单机或双击文件名或图标直接在操作系统中运行。
  6. 测试和调试程序。程序能运行是个好迹象,但有时也可能出现运行错误。计算机行话叫做bug,查找并修复程序错误的过程叫做调试。
  7. 维护和修改代码。创建完程序后,你发现程序有错,或者想扩展程序的用途,或想到一个更好的解决方案,想添加一个更好的新特性,或者想要修改程序使其能在不同的计算机系统中运行等,你就要修改程序。

编程并非是一个线性的过程。有时要在不同的步骤之间往复,应该养成先规划再动手编写代码的好习惯,用纸和笔记录下程序的目标的设计框架。这样在编写代码的过程中会更加得心应手、条理清晰。

  • 编程机制

用c语言编写程序时,编写的内容被存储在文本文件中,该文件被称为源代码文件(source file)。大部分C系统,都要求文件以.c结尾(如budget.c)点号(.)前面的被称为基本名(basename),点号后面的部分称为扩展名(extension)。文件名应满足特定计算机操作系统的特殊要求。

C编程的基本策略是,用程序把源代码文件转化为可执行文件(其中包含可直接运行的机器语言代码)。典型的C实现通过编译和链接两个步骤来完成这一过程。编译器把源代码转化成中间代码,链接器把中间代码(机器语言代码)和其他代码(系统的标准启动代码,库代码)合并。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值