C语言指针(含例子).ppt

C语言指针(含例子).ppt

ID:51063060

大小:1.08 MB

页数:70页

时间:2020-03-18

C语言指针(含例子).ppt_第1页
C语言指针(含例子).ppt_第2页
C语言指针(含例子).ppt_第3页
C语言指针(含例子).ppt_第4页
C语言指针(含例子).ppt_第5页
资源描述:

《C语言指针(含例子).ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C语言程序设计大赛培训之指针教学实践部计算机中心胡晓丽指针的用途指针在C语言里应用极为广泛,是C语言的灵魂使程序简洁、紧凑、高效函数调用时批量参数的传递内存的动态分配内存地址的直接处理复杂数据结构的简洁表达等许多其它数据类型难以实现的复杂操作培训目的掌握指针的概念、指针变量定义格式和引用掌握指针的运算方法指针应用举例理解指针指针就是内存中的变量的地址理解指针内存单元的编号:计算机内存中,每一个字节的存储单元都有一个编号(亦称为内存地址)在VC中,内存单元的编号是一个8位的十六进制数(表示32位二进制数,VC是32位编译系统)如:0013FF7C……0013FF7C0013FF7B001

2、3FF7A0013FF79……0013FF00…..理解指针变量:实质是代表了“内存中的某个存储单元”。若在内存中定义了一个变量,则这个变量的内存的地址也就确定了。理解指针变量的地址:表示变量在内存中的位置,其值是该变量在内存中所占存储单元的首字节的编号程序中:inti;floatk;内存中每个字节有一个编号-----地址…...…...2000200120022005内存02003ik编译或函数调用时为其分配内存单元变量是对程序中数据存储空间的抽象理解指针a在内存中占4个字节,但&a的值是4个字节中首个字节的编号运算符&:取地址,如&a的值为变量a的地址变量地址的输出可以用格式字符串

3、“%p”#includevoidmain(){inta;a=8;printf("%d%p",a,&a);}……0013FF7C000000000013FF7B000000000013FF7A000000000013FF7900001000……0013FF00…..理解指针理解指针我们在程序中只需要指出变量名,无需知道每个变量在内存中的具体地址,每个变量与具体地址的联系是由C编译系统来完成的。对变量的存取操作就是对某个存储单元进行操作。这种直接按变量的地址存取变量值的方式称为“直接存取”。4502实验室二我有几种方法可以到实验室上机?2、按实验室所在的教室编号1、按

4、实验室名字按变量名按变量地址(即指针)实验室一实验室三45034707理解指针理解指针指针:也是一种变量,这种变量是用来存放内存地址的。指针变量指针是字节的编号,即地址。指针也是要存储的,因此每个指针也需要一个变量来存储它。这个变量称为指针变量。指针变量的值是某一定义好的变量的地址。理解指针变量&a2001p=&a;1011ap例:int*p; inta=3;101220020000001100000000间接存取:这种通过变量p到变量a的地址, 然后再存取变量a的值的方式称为“间接存取”。指针变量p指向了变量a的含义是:指针p中存放了变量a的地址。指针变量的定义定义形式如下:数据类型

5、*指针变量名;如:int*p1,num;表示的意思为:定义了一个指针变量p1,它指向的是一个整型数据。或者说,这时候p1中存储的是一个整型变量的地址。注意:指针变量定义了之后,需要给它赋一个确定的变量的地址,否则,就会出现严重的系统错误。指针变量的引用#includemain(){inta;//定义一个整型变量aint*p1;//定义指向整型变量的指针p1p1=&a;//p1中应存放变量a的地址*p1=5;//通过指针变量p1给a赋值printf("a=%d",a);}例:int**p,*s,k=20;s=&k;p=&s;…...…...200020042006200

6、5整型变量k变量s200120022003变量p20072008202000200020042004s=*pk=*s所以:k=**p说明:(1)指针p的基类型是int类型的指针。(2)&是求地址运算符。(3)因为基本数据类型int、float、char等所需存储空间不同,所以需要定义指针变量的基类型。例:指针的概念main(){inta;int*pa=&a;a=10;printf("a:%d",a);printf("*pa:%d",*pa);printf("&a:%x(hex)",&a);printf("pa:%x(hex)",pa);printf("&pa:%x(he

7、x)",&pa);}运行结果:a:10*pa:10&a:f86(hex)pa:f86(hex)&pa:f88(hex)…...…...f86f8af8cf8b整型变量a10指针变量paf87f88f89f86指针的运算方法指针的移动所谓移动指针就是对指针变量加上或减去一个整数,或通过赋值运算,使指针指向相邻的存储单元。只有当指针指向一串连续的存储单元时,还可以和指向同一串连续存储单元的指针进行相减的运算,除此之外,不可以对指针进行任何其它的

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

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

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