欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    单片机C语言中数组的用法(5页).doc

    • 资源ID:35959141       资源大小:155KB        全文页数:5页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机C语言中数组的用法(5页).doc

    -单片机C语言中数组的用法-第 5 页单片机C语言中数组的用法数组是由具有相同类型的数据元素组成的有序集合。数组是由数组名来表示的,数组中的数据由特定的下标来唯一确定。引入数组的目的,是使用一块连续的内存空间存储多个类型相同的数据,以解决一批相关数据的存储问题。数组与普通变量一样,也必须先定义,后使用。数组在C51语言的地位举足轻重,因此深入地了解数组是很有必要的。下面就对数组进行详细的介绍。(1)一维数组一维数组是最简单的数组,用来存放类型相同的数据。数据的存放是线性连续的。用以下例程说明数组的建立、数据操作:#include此程序用以说明数组的建立、数据操作unsigned char array10;/定义一个有10个单元的数组void main()unsigned char i;for(i=0;i<10;i+)arrayi=i; /用下标调用数组中的元素array |9|8|7|6|5|4|3|2|1|0| 90while(1);数组名是用来表示数组的标识,其实它是数组的首地址,即一个指针。不过它所表示的地址是固定的,不能改动。如前几章所述的相关内容,array2与*(array+2)是等效的,不过不能用array+,因为array是常量。上面的程序中的数组是静态建立的,以下例程来用说明数组的动态建立。#include#include此程序用以说明数组的动态建立unsigned char *parray;void main()unsigned char i;parray=(unsigned char *)malloc(10); /动态创建一个数组for(i=0;i<10;i+)parrayi=i; /向数组中赋值free(parray); /释放数组while(1);字符串是数组的一个重要特例。它的每个单元的数据均为字符类型(char),最后一个单元为''(0x00),用来表示字符串的结束。C51函数库中提供了专门对字符串进行处理的函数,用以下例程说明:#include#include此程序用以说明字符串char s='y','a','h','o','o',''/定义一个字符串,并对它进行初始化,以''结束void main()char s_temp10;strcpy(s_temp,s);/strcpy位于头文件中,实现字符拷贝/s为一个常量,不能s+strcpy(s_temp,"yahoo");/与上面的语句等效while(1);以下列出几种字符串的灵活用法,希望能够帮助读者深入了解字符串:#include#include此程序用以说明字符串的灵活运用此函数从字符串s中提取第n个子串,子串间由','分隔返回指向该子串的指针char *get_sub_string(char *s,unsigned char n)int i;int d=0;int fore=0;int len=strlen(s);for(i=0;iif(si=',')si=''d+;if(d=n)return s+fore;elsefore=i+1;return NULL;void main()unsigned char c;char string20;c="yahoo"2; /c='h'/*正如前面所述,字符串是由字符串的首地址来表示的,字符串"yahoo"其实就是它的首地址,那就可以这样来取其中的某个字符:"yahoo"2*/strcpy(string,"123,234,345,456");strcpy(string,get_sub_string(string,2);while(1);(2)二维数组可由两个下标确定元素的数组就称为二维数组。其定义的一般形式为:类型说明符 数组名常量表达式1常量表达式2例如:int array64;定义了一个二维数组array,有6行4列,共24个元素。两个方括号中的常量表达1与常量表达式2规定了数组的行数与列数,从而确定了数组中的元素个数。行下标从0开始,最大为5,共6行;列下标也从0开始,最大为3,共4列。数组中共有6X4=24个元素,具体如下表示:array00array01array02array03array10array11array12array13array20array21array22array23array30array31array32array33array40array41array42array43array50array51array52array53实际使用时,可以把上述二维数组看作一个6行4列的矩阵,是一个平面的二维结构。那么编译程序是如何用一维的存储空间给这样一个二维结构分配连续的存储单元的呢C51采用按行存放的方法,即在内存中先存放第0行元素,再存放第1行、第2行、.元素,每行中先存放第0列,接着存放第1列、第2列、.的元素。#include#include此程序用以说明二维数组的使用方法void main()unsigned char arrays33=1,2,3,2,3,4,3,4,5;/定义一个3行3列的二维数组,其它在内存中还是以一维的方式存储的/用下面的方式就可以知道这一点unsigned char test;test=(unsigned char *)arrays)6;/test=3;/将二维数据的首地址强制转为一维数组,按照一维数组的方式访问它while(1);除了一维数组、二维数组,其实可以定义任何维的数组,多维数组用来表示由多个下标才能决定的量。例如:int arrays333表示数组arrays为一个三维数组,对应于三维存储模型。其实单片机内的存储器是一维的,即所有数据都是依次顺序存储的,所以无论几维数组都由编译程序抽象出数组到单片机存储的实际的一维数组映射。#include此程序用以说明三维数组void main()unsigned char test;unsigned char arrays222=1,2,2,3,3,4,4,5;test=arrays110;/test=4test=(unsigned char *)arrays)7; /test=5while(1);(3)结构数组多个结构变量也可以构成结构数组,其定义方法与定义结构变量完全相同。如下例:#include此程序用以说明结构数组typedef structint a,b,c,d; Stru;void main()Stru stru10; /定义结构数组unsigned char i=0;for(;i<10;i+)strui.a=i;strui.b=i;strui.c=i;strui.d=i;while(1);

    注意事项

    本文(单片机C语言中数组的用法(5页).doc)为本站会员(1595****071)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开