- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1
主 讲: 刘怀亮
E-mail:liuhuil@mail.xidian.edu.cn
经济管理学院信息管理系
C语言程序设计C Programming Language
C程序设计中使用指针可以:
使程序简洁、紧凑、高效
有效地表示复杂的数据结构
动态分配内存
得到多于一个的函数返回值
第十章 指针
10.1 指针的概念
地址
程序中: int i;
float k;
内存中每个字节有一个编号-----地址
i
k
编译或函数调用时为其分配内存单元
变量是对程序中数据
存储空间的抽象
指针与指针变量
指针:一个变量的地址
指针变量:专门存放变量地址的变量叫~
2000
指针
指针变量
变量的内容
变量的地址
与*运算符
含义
含义: 取变量的地址
单目运算符
优先级: 2
结合性:自右向左
含义: 取指针所指向变量的内容
单目运算符
优先级: 2
结合性:自右向左
两者关系:互为逆运算
理解
i_pointer-----指针变量,它的内容是地址量
*i_pointer----指针的目标变量,它的内容是数据
i_pointer---指针变量占用内存的地址
i_pointer i (*i_pointer)
i *i_pointer *(i)
i_pointer = i = (*i_pointer)
i = *i_pointer = *(i)
直接访问与间接访问
直接访问:按变量地址存取变量值
间接访问:通过存放变量地址的变量去访问变量
例 i=3; -----直接访问
3
例 *i_pointer=20; -----间接访问
20
例 k=i; --直接访问
k=*i_pointer; --间接访问
10
例 k=i;
k=*i_pointer;
10.2 指针变量
指针变量与其所指向的变量之间的关系
指针变量的定义
一般形式: [存储类型] 数据类型 *指针名;
合法标识符
指针变量本身的存储类型
指针的目标变量的数据类型
表示定义指针变量
不是‘*’运算符
例 int *p1,*p2;
float *q ;
static char *name;
注意:
1、int *p1, *p2; 与 int *p1, p2;
2、指针变量名是p1,p2 ,不是*p1,*p2
3、指针变量只能指向定义时所规定类型的变量
4、指针变量定义后,变量值不确定,应用前必须先赋值
指针变量的初始化
一般形式:[存储类型] 数据类型 *指针名=初始地址值;
赋给指针变量,
不是赋给目标变量
例 int i;
int *p=i;
变量必须已说明过
类型应一致
例 int i;
int *p=i;
int *q=p;
用已初始化指针变量作初值
例 main( )
{ int i;
static int *p=i;
..............
} (?)
不能用auto变量的地址
去初始化static型指针
例 main( )
{ int i=10;
int *p;
*p=i;
printf(“%d”,*p);
}
危险!
例 main( )
{ int i=10,k;
int *p;
p=k;
*p=i;
printf(“%d”,*p);
}
指针变量必须先赋值,再使用
随机
零指针与空类型指针
零指针:(空指针)
定义:指针变量值为零
表示: int * p=0;
p指向地址为0的单元,
系统保证该单元不作它用
表示指针变量值没有意义
#define NULL 0
int *p=NULL:
p=NULL与未对p赋值不同
用途:
避免指针变量的非法引用
在程序中
您可能关注的文档
- 【习题】14.1热机试卷.ppt
- 放散塔自动点火伴烧系统概览.ppt
- 电子金融与支付第6章密码学基础概览.ppt
- 电子金融与支付第11章网络支付的法规和监管概览.ppt
- 【物联网】GPS全球卫星定位系统试卷.ppt
- 电子科大MATLAB第7节迭代法概览.ppt
- 放射卫生监督概览.ppt
- 放射性元素的衰变概览.ppt
- 高压电机检修培训讲义.ppt
- 电子科大薄膜物理(赵晓辉)第六章薄膜生长概览.ppt
- 2025年抚顺市特岗教师招聘真题题库附答案解析(夺冠).docx
- 2025年承德市特岗教师笔试真题题库含答案解析(夺冠).docx
- 2025年抚州市特岗教师招聘历年考题高频考点荟萃附答案解析.docx
- 2025年承德市特岗教师笔试真题汇编含答案解析(夺冠).docx
- 2025年抚州市特岗教师招聘真题汇编含答案解析(夺冠).docx
- 2025年抚州市特岗教师招聘历年考题高频考点荟萃附答案解析(夺冠).docx
- 2025年抚州市特岗教师招聘历年考题高频考点荟萃及答案解析(夺冠).docx
- 2025年承德市特岗教师招聘考试真题汇编含答案解析(夺冠).docx
- 2025年承德市特岗教师招聘笔试真题题库附答案解析(夺冠).docx
- 2025年承德市特岗教师招聘笔试真题题库附答案解析.docx
最近下载
- 国开(SC)-数据库运维-形考3(考核内容:第5章~第7章,30%)-学习资料.docx VIP
- 中国视神经脊髓炎谱系疾病诊断与治疗指南解读PPT课件.pptx VIP
- 出口用【箱单+发票】英文.docx VIP
- GB∕T42430-2024血液、尿液中乙醇、甲醇、正丙醇、丙酮、异丙醇和正丁醇检验.pptx VIP
- 部编版小学六年级下册语文单元测试卷全册(含答案).pdf VIP
- 高血压病的护理常规 高血压护理常规.doc VIP
- QUICK-376D-中文说明书使用手册.pptx VIP
- 部编人教版五年级下册小学语文全册单元测试卷(含期中期末试卷).doc VIP
- 2025年部编版小学五年级下册语文全册单元测试卷及答案 .pdf VIP
- GB∕T42430-2024血液、尿液中乙醇、甲醇、正丙醇、丙酮、异丙醇和正丁醇检验.pptx VIP
原创力文档


文档评论(0)