指针概念与指针与一维数组.ppt

指针概念与指针与一维数组.ppt

ID:56433160

大小:699.50 KB

页数:42页

时间:2020-06-18

指针概念与指针与一维数组.ppt_第1页
指针概念与指针与一维数组.ppt_第2页
指针概念与指针与一维数组.ppt_第3页
指针概念与指针与一维数组.ppt_第4页
指针概念与指针与一维数组.ppt_第5页
资源描述:

《指针概念与指针与一维数组.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1地址和指针2指针变量3指针作为函数参数4指针与数组5指针的运算6字符指针7指针数组和多级指针第八章 指 针8指向函数的指针地址和指针的概念内存区的每一个字节有一个编号,这就是“地址”。如果在程序中定义了一个变量,在对程序进行编译时,系统就会给这个变量分配内存单元。1.数据在内存中的存储方式:按数据类型给在内存为其分配一定数量的存储单元(字节)。2.内存单元的地址:内存单元的编号,与变量名对应。3.内存单元的内容:即变量的值。跟我来!8.1地址和指针变量与地址程序中:inti;floatk;内存中每个字节有一个编号-----地址…...

2、…...2000200120022005内存02003ik编译或函数调用时为其分配内存单元变量是对程序中数据存储空间的抽象…...…...2000200420062005整型变量i10变量i_pointer200120022003指针与指针变量指针:一个变量的地址称为该变量的~指针变量:专门存放另一变量地址的变量叫~2000指针指针变量变量的内容变量的地址指针变量变量变量地址(指针)变量值指向地址存入指针变量&与*运算符含义含义:取变量的地址含义:取指针所指向变量的内容两者关系:互为逆运算理解…...…...20002004200620

3、05整型变量i10变量i_pointer2001200220032000指针变量i_pointer-----指针变量,它的内容是地址量*i_pointer----指针的目标变量,它的内容是数据&i_pointer---指针变量占用内存的地址200010i_pointer*i_pointer&i_pointerii_pointer&ii*i_pointeri_pointer=&ii=*i_pointer8.2指针变量指针变量与其所指向的变量之间的关系1.指针变量的定义一般形式:[存储类型]数据类型*指针名;3变量i2000i_pointe

4、r*i_pointeri*i_pointer&ii_pointeri=3;*i_pointer=33变量i2000i_pointer*i_pointeri*i_pointer&ii_pointeri=3;*i_pointer=3合法标识符指针变量本身的存储类型指针的目标变量的数据类型表示定义指针变量不是‘*’运算符例int*p1,*p2;float*q;staticchar*name;注意:1、int*p1,*p2;与int*p1,p2;2、指针变量名是p1,p2,不是*p1,*p23、指针变量只能指向定义时所规定类型的变量4、指针变量

5、定义后,变量值不确定,应用前必须先赋值指针变量名=某一地址;跟我来!8.3.指针变量的赋值方式1:指针变量名=&变量名;方式2:指针变量名=另一已经赋值的指针变量;方式3:在定义的时候初始化1.指针变量的初始化一般形式:[存储类型]数据类型*指针名=初始地址值;赋给指针变量,不是赋给目标变量例inti;int*p=&i;变量必须已说明过类型应一致例int*p=&i;inti;例inti;int*p=&i;int*q=p;用已初始化指针变量作初值例voidfun(){inti;staticint*p=&i;..............}(

6、)不能用auto变量的地址去初始化static型指针2.指针变量的三要素:指针变量的类型:和其所指变量的类型一致;只有整型变量的地址才能放到指向整型变量的指针变量中。下面的赋值是错误的∶floata;int*pointer_1;pointer_1=&a;/*将float型变量的地址放到指向整型变量的指针变量中,错误*/指针变量的值:另一个变量在内存的地址;指针变量的命名规则:同普通变量。不包括*;i的地址pi的值iqi的地址例如:inti,*p,*q;p=&i;/*指针变量名=&变量名;*/q=p;/*指针变量名=另一已经赋值的指针变

7、量*/示意图跟我来!请牢记,指针变量中只能存放地址(指针),不要将一个整数(或任何其他非地址类型的数据)赋给一个指针变量。p=&i/*将变量i的地址赋给p*/p=arr/*将数组arr的首地址赋给p*/p=&array[i]/*将数组arr中下标为i的元素赋给p*/pl=p2/*将指针变量p2的值赋给指针变量p1*/p=NULL/*将指针p赋空值*/NULL表示不指向任何对象。实例3.零指针与空类型指针零指针:(空指针)定义:指针变量值为零表示:int*p=0;p指向地址为0的单元,系统保证该单元不作它用表示指针变量值没有意义#defi

8、neNULL0int*p=NULL:p=NULL与未对p赋值不同用途:避免指针变量的非法引用在程序中常作为状态比较例int*p;......while(p!=NULL){...…}void*类型指针表示:v

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

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

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