- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C 教程_ch3_4
本文由泉蜜柑贡献
ppt文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。
3.6 指 针
为了理解什么是指针,必须弄清楚数据在内 为了理解什么是指针, 存中是怎样存放的,又是怎样被读取出来的. 存中是怎样存放的,又是怎样被读取出来的.
回顾: 定义变量 回顾
如果在程序中定义了变量,在编译时就给该变量分 如果在程序中定义了变量, 配内存单元来存储变量的值. 配内存单元来存储变量的值.系统根据程序中定义 的变量类型,分配一定长度的空间. 变量类型,分配一定长度的空间.
如:int a=50;
解析:编译器会为其分配四个字节的内存单元,假设为 解析:编译器会为其分配四个字节的内存单元, 0x3FF007100x3FF00713, 0x3FF007100x3FF00713,则这四个字节的内存单元中 存储的值为50.我们称变量a的地址为0x3FF00710, 存储的值为50.我们称变量a的地址为0x3FF00710,变量 值为50. 值为50.
通过操作符取得变量的地址 通过 操作符取得变量的地址
coutaendl; 0x3FF00710
指针概念
根据C++语言的规定,可以定义这样一 根据C++语言的规定 语言的规定, 种特殊变量:它是专门存放变量地址的, 种特殊变量:它是专门存放变量地址的, 称之为指针变量(简称指针). 称之为指针变量(简称指针).
int *ip=a;
(也称指针ip指向了a) 也称指针ip指向了 指向了a 解析:指针ip的变量值为 的地址0x3FF00710 的变量值为a 解析:指针ip的变量值为a的地址0x3FF00710 coutipendl; 0x3FF00710
指针变量的类型及定义
指针也需要类型,它所存储的那个变量类型, 指针也需要类型,它所存储的那个变量类型, 就称为指针的类型
指针变量的定义方式: 指针变量的定义方式: 指针类型 * 指针变量名; 指针变量名; 如:char *cp; //定义指向字符型数的指针cp //定义指向字符型数的指针 定义指向字符型数的指针cp
注意
定义中的*可以居左,居右,或居中. 定义中的*可以居左,居右,或居中. 要同时定义多个相同类型的指针,则为: 要同时定义多个相同类型的指针,则为: int *p1, *p2;
指针的大小:一个指针变量占用多少内存空间? 指针的大小:一个指针变量占用多少内存空间?
不管指针指向什么类型的变量,它的大小总是固定的:只要能 不管指针指向什么类型的变量,它的大小总是固定的: 放得下一个地址就行! 32位机中存放一个地址需要 个字节. 位机中存放一个地址需要4 放得下一个地址就行!在32位机中存放一个地址需要4个字节. int* pInt; int* char* char* pChar; bool* bool* pBool; float* float* pFloat; double* double* pDouble; 试验: sizeof(pInt),sizeof(pChar),sizeof(pBool), 试验: sizeof(pInt),sizeof(pChar),sizeof(pBool), sizeof(pFloat),sizeof(pDouble)的值分别为多少 sizeof(pFloat),sizeof(pDouble)的值分别为多少? 的值分别为多少?
给指针变量赋值
(1) int k = 100; (2) int* p; int* (3) p = k; //将变量k的地址赋给 p //将变量 将变量k (也称:p指向k) 也称: 指向k
此处指针赋值的结果,就是让它存储下另一个变 此处指针赋值的结果, 量的地址.简称指向另一个变量. 量的地址.简称指向另一个变量.
注意
操作符: 操作符:
( 取地址操作符 ) : 表示取实体的地址 , 取地址操作符) 表示取实体的地址, 后面 必须跟具有空间地址的实体
ip = 23; 23; // error,字面值无实际存储空间 error,
设有int x=3 试验如下几种写法正确与否: 设有int x=3; 试验如下几种写法正确与否:
① ② ③
ip=(x+1 ip=(x+1); int *ip=(x++); *ip=(x++); int *ip=(++x); *ip=(++x);
习题 若有以下定义,则说法错误的是( 若有以下定义,则说法错误的是( int a=100,*p=a
您可能关注的文档
- ACS系统及第二代支付系统介绍.doc
- ad008富顺苑广告推广策略案.doc
- AC输入LED驱动器技术问题尚存 未来趋势待定.doc
- ad016傲景观澜7月份推广计划.doc
- ad017名仕家园广告营销方案.doc
- Adobe FireWorks简介.doc
- Adobe考试试题及答案.doc
- Adobe Reader 书签插件(纯手工)-让PDF文件也支持书签功能.docx
- ADONET认证题库第2套.doc
- ADSL拨号软件的安装和设置.doc
- 幼儿园全民国家安全教育日PPT.ppt
- 文明礼仪伴我行主题班会课.ppt
- 4.2 《心有一团火,温暖众人心》课件(共26张PPT) 2024-2025学年统编版高中语文必修上册.pptx
- 大模型平民化开启“AI+医疗”新纪元.pptx
- 2《以工匠精神雕琢时代品质》 课件(共28张PPT)2024-2025学年统编版高中语文必修上册.pptx
- 3《鸿门宴》 课件 (共52张PPT)2024-2025学年统编版高中语文必修下册.pptx
- unit 2能力阅读写作拔高练-学九级英语全一册单元模块满分必刷题人教版.pdf
- 9.3 《声声慢(寻寻觅觅)》课件 (共25张PPT)2024-2025学年统编版高中语文必修上册.ppt
- “4·23世界读书日”主题教育班会-阅读启心智,知识筑梦想 课件(共27张PPT).pptx
- 4EAT 变速箱维修手册.pdf
最近下载
- DG_TJ08-40-2010:地基处理技术规范.pdf VIP
- 2024年四川省宜宾市江安区化学中考一诊试卷.doc VIP
- 2024年中考语文总复习专题06:修辞手法(附答案解析).docx
- QCT 468_汽车散热器最新标准规范.pdf
- 《基本分析与技术分析相结合的A股投资策略案例报告》6200字.doc
- 2 TNC 640 HSCI加工中心和铣车复合加工机床数控系统.pdf VIP
- 2024年四川省宜宾市江安中学中考物理一诊试卷 .docx VIP
- 节能与新能源汽车技术路线图2.0_完整下载版.pdf
- 一般现在时(第三人称单数形式_)及练习.doc VIP
- 医院医保办个人年度述职报告与医院医保办个人总结汇编.doc VIP
文档评论(0)