[理学]第八章结构体.ppt

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]第八章结构体

* 第八章 结构体 vc 常州信息职业技术学院计算机学院C语言课程组 C语言程序设计 教 学 目 标 2、熟练掌握结构体变量、结构体数组的应用 3、掌握结构体指针的应用 4、理解和领会结构体变量和结构体指针变量作为函数参数的区别 5、简单了解动态存储分配和链表的基本概念及链表的建立、插入和删除 知识目标 1、掌握结构体的定义 7、了解枚举类型的定义和变量的使用 6、了解共用体类型的定义、共用体变量的定义和使用 教 学 目 标 2、能利用结构体编写应用程序, 解决较复杂的实际问题 能力目标 1、会使用结构体存储、处理数据 3、能够独立思考编写代码,并基本熟练 在VC6.0环境下进行程序的调试和测试 引 例 描 述 通讯录查找。建立一个通讯录的结构体记录,包括姓名、电话号码、通讯地址。先输入n(n10)个朋友的信息,再输入要查找的朋友姓名,若存在于通讯录中,则输出这个人的全部信息,否则输出“通讯录中无此人”的信息。 描述 演示 知 识 储 备 8.1 用typedef定义类型 一、用typedef定义类型的方法 C语言不仅提供了丰富的数据类型,而且还允许用关键字typedef定义一种新的类型名来代替已有的类型名。 typedef定义新类型名的一般形式为: typedef 原类型名 新类型名 其中原类型名中含有定义部分,新类型名一般用大写表示,以便于区别。 例如:typedef int INTEGER; typedef float REAL; 定义了新的数据类型INTEGER和REAL,它们分别代表已有数据类型int和float。 则: INTEGER a,b;等效于: int a,b; REAL x,y;等效于: float x,y; 用typedef定义新类型名的步骤 3、最前面加typedef 如: typedef int INTEGER; 2、将变量名换成新类型名 如: i换成INTEGER; 1、按定义变量方法先写出定义体 如: int i; 4、用新类型名定义变量 如: INTEGER i,j; 知 识 储 备 经典用法 Typedef 2、定义指针类型 例如: typedef char *STR; /*定义STR为字符指针 类型*/ STR p,s[10]; /*p是字符指针变量, s[10]是字符指针数组*/ 1、定义数组类型 例如: typedef int ARRAY[20]; /*数据类型ARRAY为整型数组类型*/ ARRAY a,b,c; /*等效于int a[20],b[20],c[20];*/ 说明 1、用typedef可以声明各种类型名,但不能用来定义变量。 2、用typedef只是对已经存在的类型增加一个类型名,而没有创造新的类型。 3、typedef与#define有相似之处,如:typedef int INTEGER;和#define INTEGER int;的作用都是用INTEGER代表int。但事实上,它们二者是不同的。#define是在预编译时处理的,它只能作简单的字符串替换,而typedef是在编译时处理的,它并不是作简单的字符串替换,例如: typedef int NUM[10]; 并不是用“NUM[10]”去代替“int”,而是采用如同定义变量的方法那样来声明一个类型(就是将原来的变量名换成类型名)。 4、当不同源文件中用到同一类型数据(尤其是像数组、指针、结构体、共用体等类型数据)时,常用typedef声明一些数据类型,把它们单独放在一个文件中,然后在需要用到它们的文件中用#include命令把它们包含进来。 5、使用typedef有利于程序的通用与移植。有时程序会依赖于硬件特性,用typedef便于移植。例如,有的计算机系统int型数据用两个字节,数值范围为-32768~32767,而另外一些机器则以4个字节存放一个整数,数值范围为±21亿。如果把一个C程序从一个以4个字节存放整数的计算机系统移植到以2个字节存放整数的系统,按一般办法需要将定义变量中的每个int改为long。例如,将“int a,b,c;”改为“long a,b,c;”,如果程序中有多处用int定义变量,则要改动多处。现可以用一个INTEGER来声明int: typedef int INTEGER; 在程序中所有整型变量都用INTEGER定义。在移植时只需

您可能关注的文档

文档评论(0)

skvdnd51 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档