- 1、本文档共84页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * p pp a a p int a, *p; p=a; 7.2.3 多级指针与指针数组 pp p a *p a p a *pp pp—多级指针 1.多级指针 p 定义二级指针的一般形式: 数据类型 **指针名; 例:int **pp; 在对多级指针进行定义时,指针名前有多少个“*”号,即表示定义的是多少级指针变量。 #include stdio.h void main( ) { int i=5, *p, **pp; p=i; pp=p; printf(“%ld,%d\n”, i , i); printf(“%ld,%ld,%d\n”, p, p, *p); printf(“%ld,%ld,%ld,%d\n”,pp, pp, *pp, **pp); } ? 例7.10 多级指针举例。 FF74H pp FF78H p FF7CH i FF78H FF7CH 5 在使用多级指针时,应注意以下两点: (1)当访问一个指针所指向的变量时,只有一级指针指向的变量才是要处理的数据,而多级指针所指向的变量仍是一个指针。 (2)多级指针的数据类型是它所指向的最终变量的数据类型。 一系列有序指针变量的集合组成了指针数组。指针数组中的每个元素都是指针变量,并且它们具有相同的存储类型和指向相同的数据类型。与普通数组一样,在使用指针数组之前,必须先对其定义。指针数组的定义形式为: 存储类型 数据类型 *指针数组名[元素个数]; 指针数组名就表示该指针数组的存储首地址。 例:① int *p[2]; ② int a, *p, b[10], *p1[3]; 2.指针数组 #include stdio.h void main( ) { int a[5]={1,2,3,4,5}; int *p[5]={a[0],a[1],a[2],a[3],a[4]}; for(int i=0;i5;i++) printf(“%4d”,*p[i]); } ? 例6.11 指针数组举例。 a[0] a[1] a[2] int *p[5]; p[0] p[1] p[2] p[3] p[4] int a[5]; a[0] a[1] a[2] a[3] 4 1 2 3 a[4] 5 a[3] a[4] 运行结果: 1 2 3 4 5 指针数组主要用来指向多个字符串,这样可使字符串的处理更加方便灵活、效率高。 #include stdio.h void main( ) { char a[ ]=computer,b[ ]= hardware; char c[ ]= software, *p[4]; p[0]=a; p[1]=b; p[2]=c; p[3]=NULL; //或p[3]=0; for(int i=0;p[i]!=NULL;i++) printf(“%s\n”,p[i]); } ? 例7.12 利用字符指针数组处理多个字符串。 a[0] b[0] c[0] char *p[4]; p[0] p[1] p[2] p[3] NULL a b c computer hardware software 运行结果为: computer hardware software 在程序中,如果一个数组的长度不定,可以利用在数组末尾设置NULL(空指针)来解决。 字符指针数组在初始化时,也可以把多个字符串的首地址分别直接赋给字符指针数组中的各个元素。 #include stdio.h void main( ) { char *weekname[ ]={Sunday,Monday,Tuesday, Wednesday,Thursday,Friday,Saturday}; int i; while(1) { printf(please input week No.:); scanf(“%d”,i); if(i0||i6) break; printf(week No.%d― ― >%s\n,i,weekname[i]); } } ? 例7.13 用字符串初始化字符指针数组。 weekname[0] weekname[1] weekname[2] 运行结果为: please input week No.:3 week No.3――>Wednesday ple
您可能关注的文档
- Hadoop技术产品综述.ppt
- 健康派对百分之九十九回头率的秘密.ppt
- 数据类型表达式函数.ppt
- 数字媒体营销数字媒体领域的梳理.ppt
- 第10讲药代动力学的种族差异和个体差异.ppt
- 定量遥感基础教学课件.ppt
- 九级化学上册《定量认识化学变化》课件6沪教版.ppt
- 第五单元 顺序地组织同类型数据—数组类型0.ppt
- 发动机基本术语和类型幻灯片.ppt
- 快图设计暑期讲座1-快图综述.ppt
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
文档评论(0)