网站大量收购闲置独家精品文档,联系QQ:2885784924

11 - 指针的使用.pdf

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
11 - 指针的使用

2010 河北工业大学计算机基础课程系列 C++ Programming 授课:朱怀忠 zhuhuaizhong@126.com Copyright © HEBUT . All rights reserved 前言 本次课程内容  指针的概念  指针的定义  指针变量的初始化  指针的运算 概念 内存地址 0x00010x0002 。。。。 0x0007 0x0008 。。。。  内存的基本操作单位是字节byte (8个二进制位bit),无论是读出还是写入 数据,都需要知道要操作的是哪个字节,因此,类似于人们对房间进行编号 的机制,操作系统对每个字节都进行了编号,称为内存地址。  32位微机地址总线(AB)为32位,每一位都可以输出1或者0,所以总共的组 32 32 10 10 10 2 合个数为: 2 ,即可以表示 2 个字节,为 2 *2 *2 *2 =4GB  32个二进制位如果用二进制来书写,非常繁琐,故通常使用比较简短的16 进制来表示,4GB地址范围是: 0 ~ 0xFFFFFFFF 概念 变量与内存地址 int x int y 0x00010x0002 。。。。 0x0007 0x0008 。。。。  一个字节能表示的最大无符号数为255,远远满足不了需要,不同类型的数 据往往需要多个字节才能表示出一个数,比如 32位windows平台int类型 需要4个字节。  操作一个数据时,没必要把存储占用的字节地址都指出来,只要知道第一个 字节地址(首地址)及数据类型,就可以操作全部字节。 概念 指针变量  指针 全称为 指针变量,即存储变量首地址的变量。  定义形式: 数据类型 *变量名字,例如 int *p; double *q;  其中:  数据类型,指的是该地址处存储的数据的类型  * 固定字符,指明这个变量是一个指针变量  变量命名规则同普通变量  当指针变量定义之后,只能指向同类型的数据,如p只能指向整形变 量的存储空间  举例:  int a=2;double b=3;  int *p;double *q;  p=a;q=b; 概念 取地址  变量所占据的内存地址由系统分配, 我们并不知道系统分配给变量的真正地 址是什么。那么如何获得某个变量的首地址并将它放入一个指针变量中?  由变量名得到它所代表的数据的首地址,可以使用取地址运算符 。  格式: 变量名  例如: int a=2,b[2]={1,0};couta“\t”b[1]endl  例如:int a=2;double b=3;int *p;double *q;p=a;q=b; 概念 取内容 *  如何用指针变量处理和改变它所指向的单元的值?使用取内容运算符 * , 也称为引用运算符,间接运算符  格式: *(指针运算结果) 或者 *(指针变量)  例上例中: cout *(a)endl;会输出 2,同 cout*pendl  特别的:  在使用类似 *intp 的运算之前,intp必须被赋值,即确实指向某个 存在的地址。  一维数组名字代表的即是第一个元素的地址,所以可以这样用 cout*bendl;  普通变量名不可以这样使用。cout *aendl; 是错误的 

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档