《C语言程序设计》 课件 7.3 指针数组.pptx

《C语言程序设计》 课件 7.3 指针数组.pptx

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

指针数组

指针数组:数组中的元素均为指针类型。适合用来指向字符串。1.定义形式数据类型*数组名[常量表达式]

例如:int*pa[6];[]比*优先级高,因此pa先与[6]结合,形成pa[6],具有6个元素。然后再与*结合,表示此数组中每一个元素是指针型的。8.5指针数组

2整数整数整数整数整数整数pa[0]pa[1]pa[2]pa[3]pa[4]pa[5]指针数组pa2.功能定义一个由6个指针变量构成的指针数组,数组中的每个数组元素都是一个指向一个整数的指针变量。

3.指针数组的初始化*pa[0]123a[0]*pa[1]456a[1]*pa[2]789a[2]必须用地址值为指针数组初始化inta[3][3]={1,2,3,4,5,6,7,8,9},*pa[3];pa[0]=a[0];pa[1]=a[1];pa[2]=a[2];指针数组pa[3]相当于有三个指针,*pa[0],*pa[1],*pa[2]初始化的结果:注意:int*p[5];与int(*p)[5];不同

44.指针数组的使用用指针数组和用数组地址引用数组元素是等价的*(pa[i]+j)与*(a[i]+j);*(*(pa+i)+j)与*(*(a+i)+j);(*(pa+i)[j]与(*(a+i)[j];*(&pa[0][0]+3+i+j)与*(&a[0][0]+3+i+j);*(pa[0]+3+i+j)与*(a[0]+3+i+j);pa[i][j]与a[i][j];区别:pa[i]的值可变,而a[i]的值不可变。

#include<stdio.h>#defineN4intmain(){inta[N][N],i,j,sum=0,*p[N];for(i=0;i<N;i++)p[i]=a[i];for(i=0;i<N;i++)for(j=0;j<N;j++)scanf("%d",p[i]+j);5[例8-12]求N阶方阵副对角线上的元素之和。for(i=0;i<N;i++)for(j=0;j<N;j++)if(i+j==N-1)sum+=p[i][j];printf("sum=%d\n",sum);return0;}1 2 3 45 6 7 89 10 11 1213 1415 16sum=34

感谢观看

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档