C语言绪论

首先了解一个概念,C语言是人类与计算机之间进行通信的语言,如何让计算机更快,更准确的明白人类想表达的内容,则需要各种算法来支撑。语言只是实现通信的工具。

前言:计算机的每一个操作都是根据人们事先制订的指令来进行的;而程序则是一组计算机能够识别并执行的指令。离开程序,计算机将一事无成,所以计算机可以被认为是程序的机器,而程序和指令则是计算机最基本的概念;

人如何与计算机进行沟通?当然要通过语言来进行沟通;接下来是计算机语言发展的几个阶段;

机器语言:计算机只能识别由0和1组成的指令;计算机能够直接识别和接受的二进制代码称为机器指令,而机器指令的集合则为机器语言;

符号语言:用一个英文字母或数字来代表一个指令;比如PLUS代表“加”,SUB代表“减”等等;计算机并不能直接识别和执行符号语言,需要用汇编程序来进行转换,转换成机器指令;符号语言又称为符号汇编语言或汇编语言;以下叙述中用汇编语言代表符号语言;

不同类型的计算机的机器语言和汇编语言是不相通的,因为上述两种语言更加贴近计算机,故综上机器语言和汇编语言是基于具体机器特性发展出来的语言;它们被统称为低级语言;

高级语言:为了克服低级语言的缺点,故开发出不依赖于机器的高级语言。高级语言不依赖具体机器,当然高级语言计算机也是不能直接识别的,需要借助编译程序软件把高级语言写的程序(称为源程序)转换为机器指令的程序(称为目标程序)

高级语言的发展经历了三个阶段,从非结构化语言(Fortran)到结构化语言(C语言)最后到面向对象的语言(C++)。

C语言是面向过程的语言,C++是面向对象的语言(对象可以理解为数据以及对数据进行的操作组成的);

C语言的特点:

1、语言简洁、紧凑、使用方便、灵活

2、运算符丰富

3、数据类型丰富

4、具有结构化的控制语句

5、语法限制不太严格、设计自由度大;(数组下标越界不检查、变量类型可以通用(整型、字符、逻辑)

6、直接访问物理地址,进行位操作、对硬件直接操作,这个优点也是为什么在嵌入式软件开发中使用C语言的原因;

7、程序可移植性好;

8、目标代码质量高、程序执行效率高;

C语言程序的结构

1、一个程序由一个或多个源程序文件组成;

预处理指令:在C编译系统对源程序进行“翻译”以前,由预处理器(预处理程序、预编译器)对预处理指令进行预处理;对于#include<stdio.h>指令来说,是将stdio.h头文件的内容读进来,放在#include指令行;

全局声明:函数外声明的变量为全局变量;函数内部中声明的变量是局部变量(全局变量的作用范围也有相应区别)

函数定义:函数包括函数首部以及函数体,而函数体包括声明部分(如对变量的声明)以及执行部分;

在程序规模较大时,会存在很多源程序文件,而在进行编译时,是以源程序(.c)为对象进行编译的,编译之后得到目标程序(.obj)之后,再将这些目标程序进行连接形成一个二进制的可执行程序(.exe);

2、函数是C语言的重要组成部分;有且只有一个main函数;程序总是从main函数开始执行的;

3、C语言本身不提供输入输出语句;输入(scanf)输出(printf)是由库函数来实现的;

编译系统:程序的编辑、编译、连接和运行

程序设计任务:

1、问题分析:研究给定的条件(输入)、分析最终的目标(输出)、找出解决问题的规律、选择解题的方法;

2、设计算法:可用流程图进行设计;

3、编写程序;

4、对源程序进行编辑、编译和连接,得到可执行程序;

5、运行程序、分析结果:测试注重边界条件;

6、编写程序文档:程序名称、程序功能、运行环境、程序的装入和器动、需要输入的数据以及使用事项等,可在help以及readme形式提供;

初学C语言,能力有限,难免有些错误请谅解;欢迎交流!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值