100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 高级语言程序设计(C语言)----第三章(上) 数据类型 运算符和表达式

高级语言程序设计(C语言)----第三章(上) 数据类型 运算符和表达式

时间:2021-12-26 06:03:24

相关推荐

高级语言程序设计(C语言)----第三章(上) 数据类型 运算符和表达式

高级语言程序设计(C语言)----第三章(上) 数据类型、运算符和表达式

3.1. 数据类型3.1.1. 定义3.1.2. 分类3.2. 常量3.2.1. 定义3.2.2. 常量-整型常量3.2.2.1. 定义3.2.2.2. 书写方式3.2.2.3. 计数制(各进制之间的关联)3.2.3. 常量-实型(浮点型)常量3.2.4. 常量-字符常量3.2.4.1. 分类3.2.4.2. 普通字符常量3.2.4.3. 转义字符常量3.2.5. 常量-字符串常量3.2.5.1. 定义3.2.5.2. 字符常量与字符串常量的区别3.2.6. 常量-符号常量3.2.6.1. 定义3.2.6.2. 优势3.2.7. 小结3.3. 变量3.3.1. 变量定义3.3.2. 变量-整型变量3.3.3. 变量-实型变量3.3.4. 变量-字符型变量3.3.5. 变量的定义3.3.6. 变量的初始化3.3.7. 有名常量的定义本章内容过多,一分为上下两部分

3.1. 数据类型

3.1.1. 定义

数据既是程序加工和处理的对象,也是程序加工和处理的结果。

3.1.2. 分类

1、基本类型包括整型实型(又称浮点型)字符型枚举型四种。

2、构造类型是由基本数据类型按一定规则组合而成的复杂数据类型,包括数组型结构体类型共用体类型

3、指针类型是一种更加灵活的数据类型,用来表示内存地址

4、空类型是从语法完整性角度给出的数据类型,表示不需要数据值,因而没有类型。

笔记

有符号的整型在计算机内,靠最高位的值来区分。最高位为0表示正数,最高位为1表示负数。

无符号的整型,最高位也被征用,默认都是正的。

3.2. 常量

3.2.1. 定义

常量又称为“常数”,是在程序运行过程中其值不能被改变的数据。

笔记:如果能被改变值的,就叫变量。

3.2.2. 常量-整型常量

3.2.2.1. 定义

整型常量通常称为整数,不带有小数部分,包括正整数、负整数和0。

3.2.2.2. 书写方式

C语言中,整数常量由3种书写形式:

1、八进制整型常量,必须以0开头,即以0作为八进制整数的前缀,是由数字0~7组成的数字串。(逢八进一)

2、十进制整型常量,即通常的整数,没有前缀,是由数字0~9组成的数字串,是C语言中用的最多的一种形式。(逢十进一)

3、十六进制整型常量,必须以0X或0x开头,即以0X或0x作为十六进制整数的前缀,是由字符09、af或A~F组成的字符串。(逢十六进一)

3.2.2.3. 计数制(各进制之间的关联)

详见链接: /zhangqq_0312/article/details/122300774.

3.2.3. 常量-实型(浮点型)常量

实型常量又称为浮点型常量实数,实型常量只使用十进制。

C语言的实型常量有两种书写形式:

1、十进制小数形式,由整数部分、小数点和小数部分组成,其中小数点必须有,整数部分和小数部分可以省略其中一个,正、负通过前面的“+”(可以省略)和“-”区分。

2、指数形式(用E或e表示),又叫科学计数法。

由尾数部分、阶码标志(小写字母e或大写字母E)和指数部分组成,其一般形式为aEb或aeb,其中尾数部分a的位数决定了数值的精度,指数部分b的位数决定了可表示的数值范围。a和b均有正负之分,且b必须为整数。

笔记

例如 : 2.3*105 可以写为 2.3E5或者2.3e5; 2.3 *10-5 可以写为 2.3E-5或者2.3e-5;

需要注意的是 e后面的数,可以是正整数,也可以是负整数,但必须是整数。

3.2.4. 常量-字符常量

3.2.4.1. 分类

字符常量包括普通字符常量转义字符常量两种。

3.2.4.2. 普通字符常量

普通字符常量是用一对单引号括起来的单个字符,例如‘a’、‘?’均为普通字符常量。

笔记

字符‘a’,在计算机中存储的是它的ASCII 值 97,以二进制的形式存储,

而‘A’,在计算机中存的也是它的ASCII值 65。

3.2.4.3. 转义字符常量

C语言还允许使用一种特殊形式的字符常量,即以反斜杠“\”开头的转义字符,它只代表某一特定的ASCII码字符。

C语言规定字符常量中的字母是区分大小写的。

每个字符常量在内存中占用1字节,具体存放的是该字符对应的ASCII码值。

笔记

C语言中的字符常量和字符串常量是不同,

字符常量是‘单引号’,字符串常量是“双引号”;

字符串常量哪怕只有一个空串,也会有一个"\0"放在结尾来作结束标志。

字符串常量的长度要比存储的字符个数多一个。

例如 : 字符串常量 “abc”,字符个数有3个,但是它在内存中要占据4个字节来存储。最后一个字节存放”\0“,来表示个字符串结束。

需要注意的是,

C语言中空字符空格符号不同。

空字符用转义字符“\0”表示,其值是0;

空格符号是ASCII字符集中的一个可显示字符,其ASCII值是32,在屏幕上显示为空格。

笔记

\t 键盘上的Tab键;\b 键盘上的Backspace键。

3.2.5. 常量-字符串常量

3.2.5.1. 定义

字符串常量又称为“字符串”,是用双引号括起来的零个或多个字符的序列。

字符串中字符的个数称为字符串长度。

编译时自动在字符串的末尾处加一个转义字符‘\0’作为字符串的结束标志,即长度为n个字符的字符串占用n+1字节

3.2.5.2. 字符常量与字符串常量的区别

字符常量与字符串常量是不同的,其区别在于:

1、定界符不同

字符常量使用单引号,而字符串常量使用双引号。

2、长度不同

字符常量的长度固定为1;

而字符串常量的长度,可以是0,也可以是某个整数。

3、存储要求不同

字符常量存储的是字符的ASCII码值,在内存中只占用1字节;

而字符串常量,除了要存储有效的字符外,还要存储一个字符串结束标志‘\0’。

3.2.6. 常量-符号常量

3.2.6.1. 定义

符号常量使用之前必须先定义,其定义的一般格式:

#define 符号常量 常量

其中,常量可以是任意类型。

符号常量一般采用大写字母表示,而变量一般采用小写字母表示。

符号常量的定义一般放在程序的开头,每个定义必须独占一行,因为不是语句,所以后面没有分号“;”。

3.2.6.2. 优势

使用符号常量的优势在于:

1、提高程序的可读性

2、便于程序修改

3.2.7. 小结

3.3. 变量

3.3.1. 变量定义

笔记

电脑的配置越高,变量分配的空间越大。

同样是int类型,16位可能只能2个字节,32位分配4个字节,64位的电脑可能分配到8字节。

3.3.2. 变量-整型变量

整型变量分为四种:

1、基本整型,类型关键字为int。

2、短整型,类型关键字为short[int]。(int用中括号包含,表示这里可省略不写。)

3、长整型,类型关键字为long[int]。

4、无符号整型,又称为无符号基本整型(unsigned [int])、无符号短整型(unsigned short)和无符号长整型(unsigned long)三种。

在16位编译器中,一般一个int型变量占用2字节,且long型(4字节)≥int型(2字节)≥short型(2字节);

而在32位编译器中,一个int型变量占用4字节,long型变量占用4字节,short型变量占用2字节。

笔记: [ ]

3.3.3. 变量-实型变量

实型变量分为两种:

1、单精度实型,类型关键字为float,一般占用内存4字节,保留6~7位有效数字。

笔记

占用4个字节,4个8位二进制,可存储的数最大是 232-1,可能除去最高位的符号位,还有231-1,

再除去小数部分,可保留的有效数字还剩6~7位。(有效数字:从左往右,第一个非零数字开始算,不算小数点。)

2、双精度实型,类型关键字为double,一般占用内存8字节,保留15~16位有效数字。

例如:float a;

a=123456.789 //实际a的值是 123456.7

double b;

a=123456.789 //实际b的值是 123456.789

3.3.4. 变量-字符型变量

字符型变量的类型关键字是char,存放的是字符的ASCII码值(无符号整数),占用内存1字节

需要注意的是,字符串只能是常量,C语言中没有字符串变量,而是用字符数组存放字符串变量

笔记

short和long 代表带符号的数字,最高位是符号位,所以只剩15位存储。

负数在计算机中是以补码的形式存储。所以比正数多一。

无符号 unsigned 最高位正常使用

字符型 char 最高位也被征用,用来与汉字存储做区分。最高位0代表字符,1代表汉字。

一个汉字在计算机内占2个字节。

3.3.5. 变量的定义

C语言规定,任何变量必须先定义后使用

笔记:定义就是声明,向内存申请一定的空间。数据类型就代表申请空间的大小。

变量定义语句的一般格式:

数据类型符 变量名1[,变量名2,…];

笔记

一次只声明一个变量时: 数据类型符 变量名1;

一次声明多个同类型变量时:数据类型符 变量名1 ,变量名2,… ; (用逗号将其隔开)

对变量进行定义时,需要注意以下几个方面:

1、变量定义可以存放在函数之外,也可以放在函数体或符合语句中。

2、被定义为整型(包括int、short和long)的变量,若其值为-128~127,则可以作为字符型变量使用。

3、被定为无符号整型(包括unsigned、unsigned short和unsigned long)的变量,若其值0~255,也可以作为字符型变量使用。

4、被定义为字符型的变量,可以作为整型(包括int、short和long)变量使用,其将值为-128~127, 也可以作为无符号整型(包括unsigned、unsigned short和unsigned long)变量使用,其值为0 ~255。

5变量定义后,系统自动为其分配连续的内存单元,所占用的内存字节数取决于变量的数据类型

3.3.6. 变量的初始化

变量的初始化是给变量赋值的一种方式,

定义变量的同时给变量赋初值称为变量的初始化。

变量初始化语句的一般格式:

数据类型符 变量名1=初值1[,变量名2[=初值2],…];

int radius=2,area;

short m=1,n=2;

long l1=123L,l2;

笔记;

上图中,错误的示例: int x = y = 1 ,是因为 y 还没有声明。

如果改为 int x,y,z; x = y = 1 ;是可以编译的。从右向左读,1先赋值给y,y把自己的值赋给 x 。

3.3.7. 有名常量的定义

C语言中,如果定义了变量并赋予其初值,但不希望在程序中对其值进行修改,

则可以将该变量定义为有名常量

有名常量定义语句的一般格式:

const数据类型符变量名1=初值1[,变量名2=初值2,…];

const int j=1,k=2;

const char ch1=‘y’,ch2=‘N’;

笔记: 关键字const修饰的常量,只允许赋值一次,不允许被改写。

本章内容过多,一分为上下两部分

详见 高级语言程序设计(C语言)----第三章(下) 数据类型、运算符和表达式

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。