本章主要内容:
程序结构
基本数据类型
变量、常量
运算符与表达式
类型转换
流程控制语句
标准输入/输出 #include
内存分配
C语言程序结构
1、注释部分 ---用中文来表达变量、函数、参数的意思
2、头文件(预编译处理)#include
3、程序主体 void 无
int main(void)
{
}
从第一章我们编写的第一个程序可以看出:每个C程序由以下3部分组成:(参见代码Example1)
·注释://和/* …. */(不支持嵌套,注意/*和*/的正确配对) 注释的作用和好处:主要用于给读者提供说明,提高程序的可读性。C编译器会忽略所有的注释,将其视为空白。但我们要养成编码的同时随手写注释的好习惯。特别是程序比较复杂,代码量比较大的程序,就越有必要写注释。方便他人理解代码,方便自己总结、检查与回顾。
·编译预处理:以#开头的行,通常我们要调用系统库函数时,需要包含相应头文件,预编译的意思是:以#include 为例,在程序编译之前将stdio.h文件的内容添加到程序(原样拷贝)替换#include 。
·程序主体:C用函数组织过程,每个相对独立的过程都可以组织成一个函数,程序一般由不同的函数按层次结构组织而成。因此,函数是C的主体。
提前预热:函数的定义分为两部分:函数首部和函数体。
float area(float r);//函数声明
float area(float r) //函数首部
{ //函数体的开始
float s;//函数体的执行部分
s = 3.1415926 * r * r;
return s; //函数返回值
}//函数体的结束
C语言的基本数据类型
基本数据类型
字符型 1个字节(char ‘a’ b 3) 整型int 浮点型float --小数 1.2 1.5 2.3567657 4个字节
有效位数 6-7位
Short int
Int
Long int
Float 单精度浮点型 (4byte) 6-7位
Double 双精度浮点型 (8个byte) 15--15位
在讲解C语言的数据类型和变量之前,先来了解一下补码。参见《补码的概念》。
C提供以下数据类型:
字符型(char),整型(short,int,long),浮点型(float(有效数字6-7),double(有效数字15-16),long double(有效数字18-19)),数组,结构体,共用体,枚举型,指针类型,空类型(void)。可以将数据类型前面增加unsigned,则变成无符号数 。默认为signed。关于浮点型数据在内存中的存放,请参见《float的浮点表示法.doc》
(见代码Example2)
C++对C的补充:
布尔型(bool)、引用类型(&)、类、string(特殊的类)
C语言的基本数据类型和其表示范围:
char:1个字节—8位—表示范围0 ~ 2^8-1
int: 4个字节—32位—表示范围-2^31 ~ 2^31-1(减1是因为0的缘故)
C语言的变量与常量
标识符:
C程序中有许多要命名的对象,如变量、符号常量、函数名、自定义数据类型名等。C语言规定标识符只能由字母、数字和下划线组成。其中第一个字符必须是字母或下划线。
以下标识符是合法的:a, x, x3, BOOK_1, sum5
以下标识符是非法的: 3s(以数字开头) s*T(出现非法字符*) -3x(以减号开头)
注意:标识符严格区分大小写,应尽量做到顾名思义,不能与关键字相同。
关键字:
计算机预先定义的一些标识符。见如下:
auto、enum、unsigned、break、extern、return、void、case、float、short、volatile、char、for、 signed、while、const、goto、sizeof、bool、continue、if、static、default、inline、struct、do、int、switch、double、long、typedef、else、register、union
变量:
在程序的运行过程中,其值可以改变的量称为变量。变量在内存中占据一定的存储单元,用来存放该变量的值。变量由变量类型、变量名、变量值组成。变量的类型表明该变量用来存储什么类型的数据,变