C++语言程序设计电子教案8C++语言程序设计电子教案8.pptVIP

C++语言程序设计电子教案8C++语言程序设计电子教案8.ppt

  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语言程序设计电子教案8C语言程序设计电子教案8

* 第8章 指 针 YYH版 第8章 指 针 8.1 指针的概念与定义 8.2 指针作函数参数 8.3 指针与数组 8.4 指针与函数 8.5 复杂指针 教材上的第二章2.8 8.1 指针的概念与定义 8.1.1 指针的概念 地址 图 8.1 内存分配表 8.1.2 指针的定义及使用 1. 指针的定义:指针是一种存放地址值的变量,它指向/表示另一变量。  设一个数据占两个字节(后同) 说明:如它变量一样,必须在使用前定义。指针变量的命名遵守与其它变量相同的规则。指针定义的格式如下: 类型名 *指针名; 例 8.1 指针与非指针的定义 char *pcl,*pc2; /* pcl和pc2均为指向char型变量的指针*/ float *pt,pf; /*pt是float型的指针,而pf为普通的float型变量*/ 例 8.2 指针的指向 int *point;  scanf(“%d”, point); //键入十进制数据给指针所指向的地方/变量,这里,若是变量必冠“”,若是指针变量必省“”,即按地址操作。 *不是变量的一部分,而仅仅定义指针变量的标识;而类型是指针变量所指变量的类型。 显然,定义一个指针变量,就可给多个变量赋值(只需改变指向即可) 2. 指针运算符( 两个运算符*和):  变量:取变量地址,即取/求指定变量(非指针变量)的地址。 *指针变量:求变量值,即指针运算符(或称“间接访问”运算符),即取出指针变量所指向的变量的值。 例如: a为变量a的地址,*p为指针p所指向的存贮单元的内容。 运算符只能作用于变量,包括基本类型变量和数组的元素、 结构体类型变量或结构体的成员(第九章),不能作用于数组名、 常量或寄存器变量; *只能作用于指针变量。 例如: double r, a[20];  int i;  register int k; 则表达式r、 a[0]、 a[i]是正确的, 而(2*r)、 a、k是非法表示。 例如, 如果pc是指向字符变量c的指针(见上图 8.1 内存分配表),则*(c)和*pc表示同一字符对象c (=‘F’)。因而赋值语句: *(c)=‘F’;  *pc=‘F’;  c= ‘ F ’; 说明:指针变量应先定义后用单目运算符“*”和“”进行运算;指针变量只能先取地址运算后才能进行其间接访问(*)。 例 8.3 取地址运算符。 int a=10; cout*pendl; int *p; coutaendl; p=a; //输出的两个结果是一样的10 (效果相同,都是将‘F’存入变量c) 图 8.1 内存分配表 设一个数据占两个字节 ……… 地址 3. 指针的使用:例8.4 交换任意两个数并输出。 #include stdio.h void main( ) { int a, b, *p1, *p2;  a=10; b=20;  p1=a; p2=b;  printf(“%d\t%d\n”, *p1, *p2); p1=b; p2=a;  printf(“%d\t%d\n”, *p1, *p2); } 程序运行结果:  10 20 20 10 2A00 2A10 2B00 2B10 2B00 2B10 p1 p2 a b 10 20 2A00 2A10 2B00 2B10 2B00 2B10 p1 p2 a b 10 20 8.2 指针作函数参数:引例 8.6交换任意两个数并输出(形参为变量即“值传递”见函数的三角交换例子)。 #include stdio.h void swap(int x, int y);  void main() { int a, b;  a=10; b=20;  swap(a, b);  printf(“a=%d, b=%d\n”, a, b);  } void swap(int x, int y) { int temp;  temp=x;  x=y;  y=temp;  } 图 8.5 swap函数被调用时的内存分配图 10 20 2000 2002 a b ……

文档评论(0)

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

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

1亿VIP精品文档

相关文档