第6章 指针[1].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文档。上传文档
查看更多
98-10-8 第十章 指针 第六章 指针 指针的概念 变量的指针和指向变量的指针变量 数组的指针和指向数组的指针变量 字符串的指针和指向字符串的指针变量 函数的指针和指向函数的指针变量 返回指针值的函数 指针数组和指向指针的指针 指针小结 第一节 指针的概念 一、变量的地址和内容: 设程序中定义了变量a: …… int a=3; …… 执行时为a开辟2个字节的空间(设开辟2000H和2001H),并赋值为3 二、直接寻址和间接寻址: (1)直接寻址:按址存取 (2)间接寻址: 某变量的地址存放在另外的内存单元中 (3001开始) 存取时,先到3001开始的内存单元中将变量的地址(2000)取出,再按该地址存取内容(3) 三、存放地址的变量: 可以定义一种变量用来存放另外一个变量的地址 如: int *i_pointer; i_pointer=a; 定义变量 i_pointer存放整形变量的地址,系统分配给i_pointer相应的存储单元(设3001和3002) 用i_pointer=a;语句, 将a的地址存于变量i_pointer 中,即i_pointer中存放地址2000 通过i_pointer可以找到变量a, 称变量i_pointer指向a 通过变量的地址可以找到变量, 或变量的地址对应着变量, 故将变量的地址称为变量的指针 如: 2000是变量a的指针, 或说, 变量a的指针是2000 存放地址的变量称为指针变量 如: i_pointer是指针变量(不是指针) 但: i_pointer的内容是指针(变量a的指针) 若变量i_pointer存放的是变量a的指针, 则可用 * i_pointer表示变量a (*表示指向) 第二节 指向变量的指针变量 指针变量的定义 指针变量的引用 指针变量作为函数参数 一、指针变量的定义: 格式: 类型标识符 *标识符 如: int *p1, *p2; float *p3; 作用: 定义p1、p2两个指针变量,可用来存储整型变量的地址 (不能存放其他类型变量的指针) 定义指针变量p3,用来存放实型变量的指针 main( ) { int *p1,*p2; int a,b; p1=a; /*将a的地址赋与p1*/ p2=b; *p1=2; /*将2赋给p1所指的变量*/ *p2=3; coutab; cout*p1*p2; } 二、指针变量的引用: ?可以将变量(相应类型)的地址赋给指针变量,但不能将整型量赋给指针变量 如: p1=a; 正确 但: p1=2001; 错误! ?可以将数值赋给指针变量所指的变量 如: *p1=36; /*p1必须已指向某个变量*/ “”和“*” ?“”是取地址符号 如: p1=a; ?“*”是指向的意思 如: *p1代表p1所指的变量 ? “*”和“++”、“--”、 “”等优先级相同,但结合性是从右至左 ?设已执行 “p1=a;”, 则 *p1同a,即p1 ?*a相当于*p1, 即变量a ?(*p1)++相当于a++ ?*p1++ 则相当于*(p1++), 是先取p的值(地址), 进行*运算, 得到a, 然后使p1指向下一个变量 main() {int a=5,b,*p=a; coutp; b=*p++; coutbp; } 结果:2000 5,2002 例:输入两个整数, 按大小顺序输出: main() { int a,b,*p1,*p2,*p; cinab; p1=a; p2=b; if(ab) {p=p1;p1=p2;p2=p;} cout *p1*p2; } 例:输入两个整数, 按大小顺序输出: main() { int a,b,*p1,*p2,*p; cinab; p1=a; p2=b; if(ab) {p=p1;p1=p2;p2=p;} cout *p1*p2); } 例:输入两个整数, 按大小顺序输出: main() { int a,b,*p1,*p2; int p; cinab; p1=a; p2=b; if(ab) {p=p1;p1=p2;p2=p;} cout *p1*p2; } 例:输入两个整数, 按大小顺序输出: main() { int a,b,*p1,*p2,*p; p1=a; p2=b; cin p1p2; i

文档评论(0)

好文精选 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档