第13章 指针的使用.ppt

第13章 指针的使用.ppt

ID:48814476

大小:1.06 MB

页数:49页

时间:2020-01-28

第13章 指针的使用.ppt_第1页
第13章 指针的使用.ppt_第2页
第13章 指针的使用.ppt_第3页
第13章 指针的使用.ppt_第4页
第13章 指针的使用.ppt_第5页
资源描述:

《第13章 指针的使用.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第10章指针的使用主讲教师:郑立垠计算机与通信工程学院计算机应用技术系本章主要内容地址与指针的概念指针变量的定义与使用一维数组与指针的关系指针的应用问题的提出变量的三个要素:问题:数据存储在什么位置?数据在内存中是如何存取的?标识符空间大小存储内容变量名称:数据类型:变量的值:地址与指针的概念在计算机中,把内存区划分为一个一个的存储单元,每个单元为一个字节(8位),它们都有一个编号,这个编号就是内存地址。一、地址:注意:1、程序中定义的每个数据在编译后都占有各自的内存区。2、数据所占有的存储单元个数是由其类型决定的。3、首地址:第1个单元的地址地址与指针的概念二、变量与地址:如定义

2、:charc=‘A’;intk;…...…...2000200120022005内存0200301000001k编译或函数调用时为其分配内存单元地址注意:c和k的地址可能相邻,也可能不相邻,是由系统分配的,编程人员不用关心。变量是对程序中数据存储空间的抽象地址与指针的概念三、指针与指针变量:指针:在C语言中,将变量的地址形象化地称为指针。指针变量:专门存放变量地址的变量…...…...2000200820122010整型变量i10变量i_pointer(=&i)2002200420062000指针指针变量变量i的内容变量i的地址指针变量i_pointer指向整型变量i地址与指针的概

3、念指针与指针变量的关系:指针变量i_pointer变量i变量值指向地址存入指针变量变量i地址变量与指针一、指针变量的定义一般形式:类型说明*指针变量名;指针变量指向的变量的数据类型指针说明符表示定义指针变量例如:int*p1,*p2;floatx,*q;char*c;注意:指针变量定义后,其内容不确定,应用前必须先赋值变量与指针二、指针变量的赋值用变量的地址给指针变量赋值(求地址运算符&)注:只能用同类型变量的地址进行赋值!如定义:int*s;floatf;则s=&f;是非法的用相同类型的指针变量赋值赋空值 若不需要指向某个特定的存储地址,或不确定指向时则赋空值。如:inta,*p

4、;p=&a;如:inta,*p1,*p2;p1=&a;p2=p1;如:int*p;p=NULL;注意:下面赋值是非法的inta,*p;p=2000;a=p;表示空指针,即不指向任何单元,在头文件stdio.h中定义。#defineNULL0变量与指针三、指针变量的初始化格式:类型说明*指针变量名=初始地址;例inta,*p=&a;变量必须已定义且类型应一致例inta;int*p=&a;int*q=p;用已初始化过的指针变量作初值例int*p=&a,a;变量与指针四、指针变量的引用1、两个运算符:&与*&:取地址运算符。取变量的地址*:取内容运算符。取指针变量所指向变量的内容2、说明

5、&:既可作用于一般变量,也可作用于指针变量*:应用场合1)作为指针修饰符,用于定义指针变量int*p;2)作为取内容运算符,作用于指针变量b=*pa3)作为乘法运算符,用于两个数相乘5*8变量与指针#includeintmain(){inta,b,*p_1=&a,*p_2=&b;a=100;b=10;printf("%d,%d",a,b);printf("%d,%d",*p_1,*p_2);printf("%d,%d",p_1,p_2);return0;}变量与指针若有:inta=5,*p=&a;则(1)(2)&和*两个运算符的优先级相同,按自右而左

6、方向结合(3)&与*互为逆运算(4)(*p)++相当于a++不定pa不定5&aa*p&apa=3*p=3&(*p)p*(&a)a变量与指针3、指针变量可以进行的操作(1)赋值:inta,*p1=&a;scanf(“%d”,p1);(2)输出:printf(“%x”,p1);(3)增减:p1++;p2--;p1+=4;(4)取内容:*p1=5;a=5;printf(“%d”,*p1);(5)比较:与指针常量NULL进行比较,两指针变量值的大小比较无意义。例int*p;......while(p!=NULL){...…}变量与指针关于指针的增减运算,比如假设&a1=0x12ffcc#

7、includeintmain() {inta1=3;int*p1;p1=&a1;printf("%x",p1);p1++;printf("%x",p1);return0;}p1++a10000001100000000000000000000000012ffcc12ffcd12ffce12ffcfp112ffd0变量与指针五、变量的存取方式:直接访问:通过变量本身对变量进行存取的方式。间接访问:通过指针变量实现对变量的访问方式。间接访问的过程是

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

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

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