大学C++基础——指针引用.pptVIP

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
大学C基础——指针引用

指针与引用 指针概念 指针的基本使用 指针与数组 指针与函数 指针应用 动态内存 特殊指针 引用 指针 ——指针概念 内存要点 程序运行中所有的代码和数据都是放在内存中,它们共享同一个内存空间。 内存以字节为基本单位,整个内存就是由很多排列整齐的字节组成。 内存中的每个字节都有一个惟一的编码,称为地址。 地址是连续编码的,最小从0地址开始。 每个字节包含8位二进制。 变量要点 变量4要素 名称、类型、数值、地址 程序通过变量操纵数据 每个变量都有一个生命期 对一般动态局部变量来说,变量的生命期从变量所在的函数开始运行直到函数结束(返回),对全局变量和静态变量来说,变量的生命期从程序开始运行直到程序结束。 变量在生命期开始时分配地址,在生命期结束时回收地址。 在变量的生命期内,变量的地址不会变化 指针概念 指针,相当于地址 int n, *p; p=n; 变量的指针(变量n的指针:n) 指针变量(类型为指针的变量,如变量p;) 指针指向变量,p→n 指针变量的类型,p类型为int * 指针所指变量的类型,*p类型为int 空指针(地址为0的指针),记为NULL 指针 ——指针的基本使用 指针基本使用 指针变量的定义,变量名前带* 取址运算符, 取值运算符,* int m, n, *p; p = n; m = *p; 指针使用举例 int n, m; int *p; 指针 ——指针与数组 一维数组的内存安排 int a[ ]={10,11,12,13,14}; int *p; p=a[0]; 变量访问的等价性 n=a[2]; a[2]+=n; 数组名作为指针常量,指针作为数组名 数组名a代表整个数组,值为整个数组的首地址 数组名作为指针常量 a指向a[0],a+2指向a[2],*a即a[0],*(a+2)即a[2] 反过来,指针作为数组名使用:*与[]等价 数组与指针的共同点 通过基地址+偏移量方式访问元素 数组方式:数组名+下标 指针方式:首地址+偏移 数组名作为指针常量,int a[10]; 表示整个数组=指向第1个元素 元素: a[i] 等同于 *(a+i) 首地址:a[i] 等同于 a+i 指针作为数组名,int *p; 指向数组的第一个元素=指向整个数组 元素: *(p+i) 等同于 p[i] 首地址:p+i 等同于 p[i] 指针的++和--运算 p++; 或 ++p; 相当于 p = p + 1; p--; 或 --p; 相当于 p = p – 1; (*p)++; 或 ++(*p); 相当于*p = *p + 1; (*p)--; 或 --(*p); 相当于 *p = *p – 1; 指针的比较和相减运算 int a[5], *p = a[0], *q; q = p + 2; 则 q p 成立 q – p 的结果为2 指针 ——指针与函数 指针的交换 交换指针 int *p, *q, *t; t = p; p = q; q = t; 交换指针所指数据 int *p, *q, t; t = *p; *p = *q; *q = t; 编写函数,交换两数 #include iostream.h void swap( int *p, int *q ) { int t; t = *p; *p = *q; *q = t; } int main() { int x, y; cin x y; swap( x, y ); cout x , y; return 0; } 调用swap函数的内存结构图 指针 ——指针应用 find函数:查找并返回下标/下标法 int find( int a[], int n, int x ) { int i; for ( i=0; in; i++ ) if ( a[i] == x ) return i; return -1; } pfind函数:查找并返回指针/下标法 int *pfind( int a[], int n, int x ) { int i; for ( i=0; in; i++ ) if ( a[i] == x ) return a[i]; return NULL; } pfind函数:查找并返回指针/指针法 int *pfind( int a[], int n, int x ) { int *p;

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档