教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

C语言程序设计(谭浩强)-学习笔记 word(4)

来源:网络收集 时间:2026-07-14
导读: 7、只能将变量已分配的地址赋值给指针变量,不能直接将整数赋值给指针变量。 8、指针变量可以有null值,防止指针误作用。 第十一章 结构体270 11.1 结构体270 1、作用——将不同类型的数据组合成一个有机的整体。 2

7、只能将变量已分配的地址赋值给指针变量,不能直接将整数赋值给指针变量。

8、指针变量可以有null值,防止指针误作用。

第十一章 结构体270

11.1 结构体270

1、作用——将不同类型的数据组合成一个有机的整体。

2、结构体的定义——结构体是一种数据结构,按照某种规则定义,将若干个不同数据类型(也可相同)的数据项的组合成的一个有机整体。

3、声明结构体类型的形式:struct 结构体类型名字 {成员列表};

成员列表形式:类型符 成员名 如:int num;

11.2 声明结构体类型变量的方法271

1、先定义结构体类型:struct 结构体类型名字 {成员列表};再定义结构体变量:struct结构体类型名字 结构体变量名。

2、可在定义结构体类型时,定义结构体类型变量。struct 结构体类型名字 {成员列表}结构体类型变量1,结构体类型变量2, ;

11.3 结构体变量引用273

1、不能将一个结构体变量作为一个整体进行输入输出,只能对结构体变量成员分别赋值。

个人学习谭浩强 的 c语言程序设计 笔记

2、结构体变量成员引用方式:结构体变量名.成员名

3、如果结构体变量成员是另一个结构体变量,则要用若干个成员运算符,一级一级找到最低一级的成员。

11.4 结构体变量初始化

1、在声明变量时整体赋值。

2、复制相同结构的变量赋值。

3、除以上两种情况下可以对结构体类型变量整体赋值,其余情况下只能对变量成员分别赋值。

11.5 结构体数组275

1、结构体数组在内存中连续存放。

2、声明方式:与定义结构体变量方法相同。见11.2,只是在变量名后+[n]。也可在定义结构体数组时直接初始化结构体数组,此时可采用+[]的形式。

3、初始化方式:同定义结构体变量方法。

11.6 结构体类型指针

结构体类型指针——是指指向结构体变量所占据的内存的起始位置的指针。 声明形式:struct 结构体类型名 *指针名。如:struct student *p;

赋值形式:指针名=&结构体变量 。如:p=&studengt1;

引用形式:(*P).成员名 或 p->成员名。*p表示指针p指向的结构体变量。 注意:

1、定义的结构体类型,和声明结构体变量时不分配空间。

2、结构体可以嵌套定义。

3、结构体成员名可以与变量名相同。

11.7 链表283

1、单项链表结构:链表有一个头指针和表尾null指针。每个结点包含实际数据和下一个结点的地址。

个人学习谭浩强 的 c语言程序设计 笔记

2、可以用结构体类型指针,将多个结构体变量链接起来形成结构体链表。如:

11.8 共用体 297

1、共用体指将几种不同类型的变量存储在同一段内存单元中。

2、共用体变量的存储单元大小等于最长成员变量所占内存的长度

3、共用体变量中起作用的是最后一次存放成员。

4、共用体类型声明方式:union 公用体类型名称 {成员变量列表};

5、共用体变量声明方式:(1)union 公用体类型名称 {成员列表}共用体变量;

(2)先声明共用体类型,然后声明共用体变量,union 公用体类型名称 共用体变量。

11.9 枚举类型301

1、枚举类型——指将变量的值一一列举出来,变量的值只限于列举出来的值的

个人学习谭浩强 的 c语言程序设计 笔记

范围内的一个。

2、声明枚举类型:enum 枚举类型名称 {枚举常量列表};

3、声明枚举变量:enum 枚举类型名称 枚举类型变量;

11.10 用typedef定义的类型304

1、typedef 的作用——可以用typedef声明新的类型名来代替已有的类型名。

2、声明方式:typedef 类型名称 新的类型名称。

第十二章 位运算308

12.1 位段 315

1、位段——是一种特殊的数据结构,它允许定义一个由位组成段,并可为它赋以一个名字。位段一般作为结构体的成员。

2、声明方法:

位段结构类型声明方法:struct 结构体类型名称 {位段成员列表};

位段结构成员(即位段变量)声明方法:unsigned int 位段变量 : n; 如:

struct packed_struct{

unsigned int f1 :1;

unsigned int f2 :1;

unsigned int f3 :1;

unsigned int type :4;

unsigned int index :9;

};

3、位段结构类型变量声明方法:同结构体。

4、同一位段必须存储在同一个存储单元中,不能跨两个单元。

第十三章 文件319

13.1 文件319

1、文件——指存储在外部介质上的数据集合(数据文件),操作系统以文件为单位对数据进行管理。

个人学习谭浩强 的 c语言程序设计 笔记

13.2 文件的分类319

1、从用户的观点看:

特殊文件——指标准输入输出文件或标准设备文件。

普通文件——指磁盘文件。

2、从操作系统的角度看:每一个与主机相关联的输入输出设备都可看作一个文件。

(1)根据文件的组织形式分为:顺序存取文件 和 随机存取文件。

(2)根据文件的存储形式分为:ASCII文件 和 二进制文件。

13.3 C语言对文件的处理方法319

C语言中对文件的存取是以字符(字节)为单位的,一个输入输出流就是一个字节流或二进制流。

文件的存储方式分为缓冲文件系统和非缓冲文件系统。区别是缓冲文件系统是系统自动开辟缓冲区,非缓冲文件系统是由程序为每个文件设定缓冲区。

ANSI C标准只采用 缓冲文件系统 来处理文件。

13.4 文件结构体类型321

缓冲文件系统中,每个被使用的文件都在内存中开辟一个FILE结构体类型的区,用来存放文件的有关信息(文件名字、文件状态、当前位置、缓冲区等有关信息),

FILE结构体类型原型:

typedef struct{

short level; /*缓冲区“满”或“空”的程度*/

unsigned flags; /*文件状态标志*/

char fd; /*文件描述符*/

unsigned char hold; /*如无缓冲区不读取字符*/

short bsize; /*缓冲区的大小*/

unsigned char *buffer; / *数据缓冲区的位置*/

unsigned char *curp; /*指针,当前的指向*/

unsigned istemp; /*临时文件,指示器*/

个人学习谭浩强 的 c语言程序设计 笔记

short token;/*用于有效性检查*/}FILE;

13.5 文件结构体数组和指针321

FILE *fp——声明了一个指向FILE类型结构体的指针变量。

FILE f[5]——声明了一个文件结构体数组f,它有5个元素,存放5个文件的信息。

FILE 变量——声明了一个文件结构体变量。

13.6 文件的操作321

C语言要求,在文件读写之前要“打开”文件,在使用结束后要“关闭”文件。

1、打开文件:

FILE *fp;

fp=fopen(“文件名”,“使用文件方式”);指针变量指向被打开的文件。 例如:fp = fopen(“a1”,“r”)。

2、关闭文件:

fclose(文件指针);返回值:关闭成功返回值为0;否则返回EOF(-1) 。

使文件指针变量不指向该文件,也就是文件指针变量与文件“脱钩”, …… 此处隐藏:1741字,全部文档内容请下载后查看。喜欢就下载吧 ……

C语言程序设计(谭浩强)-学习笔记 word(4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/108289.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)