数组指针与结构体.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C51单片机技术 5 数组、结构体与指针 内容提要 数组 结构体 指针 1 数组 定义方法 数组初始化 存储方式 应用 1.1 数组的定义方法 1.1 数组的定义方法 1.2 数组的初始化 1.2 数组的初始化 1.3 数组的存储方式 1.3 数组的存储方式 提  问 如何在片内数据存储区定义一个有10个元素的16位有符号整型数组? 如何在程序存储区定义一个有20个元素的字符型数组,并将其初始化为“Disk Error”? 如何在片外数据存储区定义一个3行5列的字符型数组? 1.4 数组的应用 —— 流水灯 1.4 数组的应用 —— 流水灯 1.4 数组的应用 —— 流水灯 2 结构体 —— 应用举例 2.1 结构体 —— 定义结构体类型 2.1 结构体 —— 定义常量与初始化 2.2 结构体 —— 存储方式 2.3 结构体 —— 使用 2.3 练习 3 指针 指针的基本概念 指向数组的指针 指向结构体的指针 指针与总线扩展 3.1 指针的基本概念 3.1 指针的基本概念 3.1 指针的基本概念 3.1 指针的基本概念 3.1 指针的基本概念 3.1 指针的基本概念 3.2 指向数组的指针 3.2 指向数组的指针 3.2 指向数组的指针 3.2 指向数组的指针 3.2 指向数组的指针 3.3 指向结构体的指针:目标 3.3 指向结构体的指针:定义类型 3.3 指向结构体的指针:定义常量 3.3 指向结构体的指针:使用 3.3 指向结构体的指针:使用 3.4 指针与总线扩展 3.4 指针与总线扩展 3.4 指针与总线扩展 4 指针的灵活应用 一维字符数组与字符指针 一维字数组与字符指针 一维字符数组与字指针 二维字符数组与字符指针 一维字符数组与结构体指针 4.1 一维字符数组与字符指针 4.2 一维字数组与字符指针 4.3 一维字符数组与字指针 4.4 二维字符数组与字符指针 4.5 一维字符数组与结构体指针 提问 5 指针的注意事项 涉及多字节整数(数组或结构体)和字符指针时,一定要注意大端、小端问题; 在16位或32位单片机上,涉及多字节变量(数组或结构体)的指针时,注意地址、注意数的对齐;必要时结构体可以使用 packed 进行定义,但是这种定义会降低效率。 作  业 如何在片内数据存储区定义一个有10个元素的16位有符号整型数组? 如何在程序存储区定义一个有20个元素的字符型数组,并将其初始化为“Disk Error”? 如何在片外数据存储区定义一个3行5列的字符型数组? 请定义一个结构体,用于存放如下信息:年龄(0~200)、性别(男女)、工资(0~60000)、住址(48个字符)。 作  业 硬盘是按照扇区组织的,每个扇区512个字节,一个目录扇区可以包含16个文件目录项,每个文件目录项32字节,依次包含如下信息:文件名(8个字节)、扩展名(3个字节)、文件属性(1)、NT预留(1)、创建时间10分项(1)、创建时间(2)、创建日期(2)、最后访问日期(2)、起始簇号高16位(2)、时间(2)、日期(2)、起始簇号低16位(2)、文件长度(4);编写程序实现如下功能: 作  业 定义文件目录项结构体; 定义512字节的数组用来代表一个扇区;定义一个文件目录项结构体指针; 在第五个目录项处创建一个文件,填充如下信息:文件名为TESTFILE、扩展名为TXT,起始于簇号0文件长度1000字节。 while(1) { char code* data pMode; char data i; pMode = cLEDMode; for (i=8;i;i--) { P0 = *pMode; pMode++; } } 基于指针的方法 代码:61字节 数据:9字节 周期:69 8个LED,从左至右,依次点亮。 前四个LED闪烁间隔一秒,后四个LED的闪烁间隔为两秒; typedef struct tLEDRec { char Mode; int TimeINms; }TLEDRec, *PLEDRec; TLEDRec code cLEDModes[8] = { {0xFE, 1000}, {0xFD, 1000}, {0xFB, 1000}, {0xF7, 1000}, {0xEF, 2000}, {0xDF, 2000}, {0xBF, 2000}, {0x7F, 2000} }; for (i=0;

文档评论(0)

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

我是自由职业者,从事文档的创作工作。

1亿VIP精品文档

相关文档