您所在位置: 网站首页 / 文档列表 / 石油/天然气工业 / 文档详情
中国石油大学课件第7章_指针.ppt 立即下载
上传人:yy****24 上传时间:2024-09-07 格式:PPT 页数:109 大小:4.7MB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

中国石油大学课件第7章_指针.ppt

中国石油大学课件第7章_指针.ppt

预览

免费试读已结束,剩余 99 页请下载文档后查看

16 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第7章指针回顾教学目标为什么引入指针指针的作用程序中:inti;floatk;指针也是一个变量,只不过该变量中存储的是另一个对象的内存地址如果一个变量存储另一个对象的地址,则称该变量指向这个对象由于指针值是数据,指针变量可以赋值,所以一个指针的指向在程序执行中可以改变。指针p在执行中某时刻指向变量x,在另一时刻也可以指向变量y指针变量声明指针变量初始化指针变量的使用零指针和空类型指针与指针相关的运算符与指针相关的运算符*与&的关系访问方式访问方式访问方式指针变量的命名规则和其他变量的命名规则一样指针不能与现有变量同名若指针已声明为指向某种类型数据的地址,则它不能用于存储其他类型数据的地址应为指针指定一个地址后,才能在语句中使用指针指针的特点inti,*p;p=&i;指针的指向共性在内存中占据一定大小的存储单元先定义,后使用特殊性它的内容只能是地址,而不能是数据必须初始化后才能使用,否则指向不确定的存储单元,对该空间进行访问,将可能造成危险可参与运算:加、减一个整数,自增、自减、关系、赋值只能指向同一基类型的变量指针使用示例指针使用示例intx,*ptr_x,*ptr_y;ptr_x=&x;ptr_y=ptr_x;指针的使用int*ptrnum,arr_num[8];ptrnum=&arr_num[0];ptrnum++;将指针加上或者减去某个整数值指针变量的运算swap(intx,inty){inttemp;temp=x;x=y;y=temp;}intmain(){inta,b;scanf("%d,%d",&a,&b);if(a<b)swap(a,b);printf("\n%d,%d\n",a,b);return0;}“地址传递”:共享内存,“双向”传递swap(intx,inty){intt;t=x;x=y;y=t;}intmain(){inta,b;int*pointer_1,*pointer_2;scanf("%d,%d",&a,&b);pointer_1=&a;pointer_2=&b;if(a<b)swap(*pointer_1,*pointer_2);printf("\n%d,%d\n",a,b);return0;}运行结果:5,9指针变量作为函数参数一个数组存储在一块连续内存单元中;数组名就是这块连续内存单元的首地址;第(i+1)个数组元素的地址可表示为&data[i]或(data+i)。可以通过以下方式为指向数组的指针赋值:inta[10];pa=&a[0];//或者pa=a;一个指针变量可以指向一个数组元素int*ptr,data[10];ptr=data+3;//或者ptr=&data[3]#include<stdio.h>intmain(void){int*ptrnum1,*ptrnum2;intvalue=1;ptrnum1=&value;value+=10;ptrnum2=&value;if(ptrnum1==ptrnum2)printf("\n两个指针指向同一个地址\n");elseprintf("\n两个指针指向不同的地址\n");return0;}数组元素表示方法数组元素引用方法数组元素地址表示方法注意指针的当前值指向数组的指针示例指向数组的指针示例数组名做函数参数数组名做函数参数数组名做函数参数数组名做函数参数数组名做函数参数指针变量与一维数组的关系指针与二维数组指针与二维数组指针与二维数组指针与二维数组指针与二维数组指向二维数组元素的指针变量指向一维数组的指针变量指向一维数组的指针变量二维数组与指针运算二维数组的指针做函数参数二维数组的指针做函数参数二维数组的指针做函数参数二维数组与一维数组指针变量的关系字符串表示形式用字符数组实现例intmain(){char*string="IloveChina!";printf("%s\n",string);string+=7;while(*string){putchar(string[0]);string++;}return0;}字符串指针作函数参数char*cp;与charstr[20];str由若干元素组成,每个元素放一个字符;而cp中存放字符串首地址charstr[20];str="IloveChina!";()char*cp;cp="IloveChina!";()str是地址常量;cp是地址变量cp接受键入字符串时,必须先开辟存储空间字符串与数组的关系charstr[]={"Hello!"};()charstr[]="Hello!";()charstr
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

中国石油大学课件第7章_指针

文档大小:4.7MB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
年会员
99.0
¥199.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用

手机号注册 用户名注册
我已阅读并接受《用户协议》《隐私政策》
已有账号?立即登录
我已阅读并接受《用户协议》《隐私政策》
已有账号?立即登录
登录
手机号登录 微信扫码登录
微信扫一扫登录 账号密码登录

首次登录需关注“豆柴文库”公众号

新用户注册
VIP会员(1亿+VIP文档免费下)
年会员
99.0
¥199.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用