C语言程序设计技能教程戴佩荣等第9章节.pptVIP

C语言程序设计技能教程戴佩荣等第9章节.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文档。上传文档
查看更多
第9章 C的精华 —指针类型 第 九 章 9.1 技能1 【知识点】 1.指针的定义 “指针”就是地址,一个变量的指针就是指该变量的地址。指针变量就是存放地址的变量。C语言规定:在使用变量之前必须先定义,一般形式如下: 类型标识符 *指针变量 (1)指针变量的定义必须用符号“*”,表明其后的变量是指针变量。 (2)定义了一个指针变量p1以后,系统就为这个指针变量分配一个存储单元(一般为2个字节),用它来存放地址,但此时该指针变量并未指向确定的整型变量,因为该指针变量中并未赋予确定的地址。 9.1 技能1 【知识点】 (3)一个指针变量只能指向同一类型的变量。 (4)指针变量可以定义为指向字符型、实型以及其他类型的变量。 2.指针的操作 (1)取地址运算符“”,如对已定义过的变量 i 操作,“i”表示变量i的内存起始地址。 (2)指针运算符,或间接访问运算符“*”,访问指针变量所指向的变量中的数据。 例9.2 输入两个整数,按由小到大的顺序输出。 main( ) { int a,b,*pl,*p2,*p; scanf(%d,%d,a,b); p1=a; p2=b; if(ab) { p=p1;p1=p2;p2=p;} printf(a=%d,b=%d\n,a1,a2); printf(Min=%d,Max=%d\n,*p1,*p2); } 9.2 技能2 【知识点】 1. a[i]表示数组a中第i个元素的值,a+i是a[i]的地址,即a[i]。 2.引用一个数组元素,可以利用前面介绍的下标法a[i] ,也可以利用地址法*(a+i) 。 a+i是a[i]的地址,那么用指针运算符对它操作,则是取a+i地址中的数据了,也就是数组a中下标为i的元素值。 3.可以定义一个指针变量指向数组元素。例如: int *p; p=a[0]; p指向a,*p就是a[0]的值,*(p+1)就是a[1]的值,*(p+2)就是a[2]的值。 9.2 技能2 【知识点】 1. a[i]表示数组a中第i个元素的值,a+i是a[i]的地址,即a[i]。 2.引用一个数组元素,可以利用前面介绍的下标法a[i] ,也可以利用地址法*(a+i) 。 a+i是a[i]的地址,那么用指针运算符对它操作,则是取a+i地址中的数据了,也就是数组a中下标为i的元素值。 3.可以定义一个指针变量指向数组元素。例如: int *p; p=a[0]; p指向a,*p就是a[0]的值,*(p+1)就是a[1]的值,*(p+2)就是a[2]的值。 例9.3 利用指针方法输出数组a中全部元素。 main( ) { int a[3],i; a[0]=10;a[1]=20;a[2]=30; for(i=0;i3;i++) printf(a[%d]=%d,i,a[i]); printf(\n); } /*下标法*/ 例9.3 利用指针方法输出数组a中全部元素。 main( ) { int a[3],i; a[0]=10;a[1]=20;a[2]=30; for(i=0; i3; i++) printf(a[%d]=%d,i,*(a+i)); printf(\n); } /*地址法1*/ 例9.3 利用指针方法输出数组a中全部元素。 main( ) { int a[3],i=0; int *p; a[0]=10;a[1]=20;a[2]=30; for(p=a;pa+3;p++) printf(a[%d]=%d,i++,*p); printf(\n); } /*地址法2*/ 9.3 技能3 【知识点】 1.函数的传值方式 函数参数按传值方式进行时,只是将值复制到形参中,而形参和实参各自有自己的存储空间如,所以调用函数后,实参的值不变。 2.函数的传地址方式 函数参数按传地址方式进行时,函数的参数是实参的两个指针常量,通过赋值语句后会使实参中的值互换。 例9.6 编程自定义一个函数,返回连

文档评论(0)

精品课件 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档