网站大量收购独家精品文档,联系QQ:2885784924

嵌入式C编程01指针的使用.pptVIP

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

数组与指针char*var[10];//10个int型指针的数组sizeof(var)=?var+1?指针数组:即数组的元素为指针类型。char(*var)[10];//指向10个int型数组的指针sizeof(var)=?var+1?数组指针:即指针的类型为数组(指向数组的指针)。字符串是属于典型的字符数组,因而通常通过char型指针处理字符串字符串与指针数组与指针将字符串直接赋值给指针,表示指针指向字符串内存首地址注意:字符串常量内存分配在只读数据区(RODATA)实例:char*p=“xnf”;chararr[]={“xnf”};p?*p++?*++p?p=‘X’?arr[0]=‘X’?strcpy(p,“XNF”)?strcpy(arr,“XNF”)?数组与指针通过指针数组表示字符串数组chara[][16]={“welcome”,“to”,“xnf”};主函数参数就是通过指针数组实现的:intmain(intargc,char*argv[])结构与指针结构包含指针:结构体中包含指针域变量如:学生信息中name与phone定义为指针注意:在程序中动态修改学生信息表中的name和phone域可行么?结构与指针指向结构体的指针结构体变量域通过.访问,而结构体指针域通过-访问sizeof(info)=?sizeof(p)=?下面这段代码错在哪里?结构与指针通过结构体指针传递参数比直接传递结构体变量更高效实参传递给形参时只拷贝了4个字节指针与指针指向指针变量的指针intnum=100;int*p=num;int**pp=p;实现指针二级访问:函数与指针1、指针作为函数的参数向函数传递数组、字符串、结构:如strc_py、show_info作为函数的输出参数 例如:实现交换两个整数的函数voidswap(inta,intb)传值,形参值改变并不能带回给实参传址,在函数内改变地址内保存的内容函数与指针问题:要在函数能改变指针的值,怎么通过输出参数返回?例如:voidget_mem(char*pmem,intsize){pmem=malloc(size);}动态分配的内存能通过pmem带回么?不能!要将实参指针的地址传递给形参(二级指针)才能实现!更直接的方法是通过函数返回值实现函数与指针WPSOFFICE指针作为函数的返回值返回字符串、动态分配的内存等,如*strcpy,*malloc注意返回地址的有效性(函数执行完毕后该地址未被回收)下面两个函数哪个是合法的?函数与指针指向函数的指针函数存放在TEXT段,同样具有地址函数名就是函数在TEXT段的入口地址跟数组名一样,函数名也可以看作是一个指针常量所以,函数名也可以赋值给指针变量,那么该指针变量类型呢?函数指针类型!通过函数指针,也可以间接调用函数。函数与指针函数指针的应用:作为函数参数实现回调函数所谓回调函数是指通过调用其他函数反过来调用某个函数模拟面向对象的多态,在UI组件的大量使用1233445ABDC1个小时****指针的使用课程安排指针的概念指针数据类型指针与其他数据类型指针修饰符内存与地址一般的32位CPU都有硬件MMU单元,能将有限的硬件内存(如512M)虚拟成一个较大(如2G)的虚拟内存这样软件可以在一个非常大的范围里使用内存每个内存单元(8bits组成一个内存单元byte)都有一个地址地址是一个无符号的整数表示,通常与CPU字长相等(在32位CPU上就

文档评论(0)

shao1452 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档