c语言数组与指针-指针篇

c语言数组与指针-指针篇

ID:36322192

大小:743.31 KB

页数:57页

时间:2019-05-09

c语言数组与指针-指针篇_第1页
c语言数组与指针-指针篇_第2页
c语言数组与指针-指针篇_第3页
c语言数组与指针-指针篇_第4页
c语言数组与指针-指针篇_第5页
资源描述:

《c语言数组与指针-指针篇》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、指针6.2指针的概念6.3指针与数组6.4字符串的指针6.5指针数组和指向指针的指针6.2.1地址与指针的概念6.2.2指针的定义与引用6.2指针的概念指针的概念指针是变量──存放地址的变量这个地址可以是变量的地址,也可以是复杂数据类型的地址,如数组,结构体等,也可以是函数的地址。指针变量存放了哪个变量的地址就称该指针指向了这个变量。内存地址1、变量与地址程序中:inti;floatk;内存中每个字节有一个编号-----地址…...…...2000200120022005内存02003ik编译或函数调用时为其分配内存单元变量是对程序中数据存储空间的抽象2

2、、数组与地址地址内存单元整型数组元素a[0]整型数组元素a[1]整型数组元素a[2]123300030013002300330043005数组与地址对照表数组名数据类型长度首地址a整型33000程序中:inta[3]={1,2,3};指针与指针变量…...…...2000200420062005整型变量i10变量i_pointer200120022003指针:一个变量的地址指针变量:专门存放变量地址的变量叫~2000指针指针变量变量的内容变量的地址指针变量变量变量地址(指针)变量值指向地址存入指针变量寻址访问内存单元称为寻址。直接寻址:通过变量名对内存单

3、元进行存取。间接寻址:通过指针变量间接存取。指针变量的定义、初始化和引用(一)、指针变量的定义和初始化数据类型*指针变量名1[=初值1],……;指针变量的定义和初始化格式例:指针变量的定义和初始化。inta;int*p=&a;floatf1,f[10],*p1=&f1,*p2=f;int*p;int*p;int*p;int*p,i;注意指针的指向编译器不识别没有明确指向的指针。但使用这样的指针可能导致错误。(二)、指针变量的引用方式1、直接引用指针变量名使用格式为:指针变量=表达式。这个表达式必须是地址型表达式例如:inti,*p_i,*q;p_i=&i

4、;q=p_i;需要用到地址时,可以直接引用指针变量名。例如:inti,j,*p=&i;scanf(“%d,%d”,p,&j);2、通过指针变量来引用所指向的变量使用格式为:*指针变量名。在程序中“*指针变量名”代表它所指向的变量。例如:inti=1,j=2,k,*p=&i;k=*p+j;(三)、取地址运算符与指针运算符对象数名称运算符运算规则运算对象运算结果结合性单目前缀取地址&取运算对象的地址变量或数组元素对象的地址单目前缀指针*取所指向的变量或数组元素指针变量、变量或数组元素的地址指针变量所指向的变量或数组元素自右向左取地址运算符和指针运算符的运算对

5、象、运算规则、结合性如表所示。&和*优先级别·&、*和自增、自减等单目运算符是同级别的·所有单目运算符的结合性均为自右向左例如,设有变量a、指针变量pa,且pa已经指向a。*&a正确的。相当于“*(&a)”,&a是变量a的地址,*(a地址)代表变量a。&*a错误的。相当于“&(*a)”,因为a不是指针变量,所以*a不正确。*&pa正确的。相当于“*(&pa)”,&pa是pa的地址,*(pa地址)代表指针变量pa。&*pa正确的。相当于“&(*pa)”,*pa代表变量a,&(变量a)代表a的地址。混合使用运算符例:用指针变量按从小到大的顺序输出三个整数。m

6、ain(){inta,b,c,*pa=&a,*pb=&b,*pc=&c,*p;scanf(“%d,%d,%d”,pa,pb,pc);if(*pa>*pb){p=pa;pa=pb;pb=p;}if(*pa>*pc){p=pa;pa=pc;pc=p;}if(*pb>*pc){p=pb;pb=pc;pc=p;}printf(“%d<=%d<=%d”,*pa,*pb,*pc);}6.3指针与数组6.3.1指向一维数组的指针6.3.2指向多维数组的指针指向一维数组的指针inta[10];int*p;p=&a[0];//p=a;这样指针p就指向了一维数组a指向一

7、维数组的指针变量的使用处理数组元素的关键是引用数组元素,引用数组元素的方法与指针指向数组的方式有关:●当指针变量指向数组首地址时,引用数组元素的方法如下:引用“数组元素[0]”*(指针变量+0)或*指针变量引用“数组元素[i]”*(指针变量+i)1、用指针处理数组元素这里的“指针变量+1”代表同数组的下一个元素●当指针变量指向下标为i的数组元素时,引用数组元素的方法如下:引用“数组元素[i]”*(指针变量+0)或*指针变量引用“数组元素[i-k]”*(指针变量-k)引用“数组元素[i+k]”*(指针变量+k)●当指针变量指向首地址后,对下标为i的数组元素

8、引用一共有下列四种方法:*(指针变量+i)*(数组名+i)指针变量[i]数组名[

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。