新编C语言程序设计教程(本科)第10章
第10章指针类型
第10章指针类型
10.1 指针与指针变量
10.2 指针与数组
10.3 指针与字符串
10.4 指针与结构体
10.5 指针与链表
10.6 指针与函数
10.7 指针作基类型
10.8 程序设计举例
第10章指针类型
10.1 指针与指针变量
10.1.1 指针变量的定义
1. 定义方法
形式:
类型标识符 *变量标识符;
定义存放指定类型数据地址的指针变量。
第10章指针类型
例如:
(1) int *p1,*p2,*p3;
定义指向整型数据的指针变量p1 、p2 、p3 。
(2) float *q1,*q2,*q3;
定义指向实型数据的指针变量q1、q2、q3 。
(3) char * r1,*r2,*r3;
定义指向字符型数据的指针变量r1 、r2 、r3 。
第10章指针类型
(4) struct date
{int year;
int month ;
int day ;
} *t1,*t2,*t3;
定义指向struct date类型数据的指针变量t1 、t2 、t3 。
第10章指针类型
说明:
(1) 指针变量可与普通变量混合定义,指针变量的定
义与普通变量的定义用变量名前加“*”区分。例如:
int i,*p;/*定义整型变量i,指针变量p*/
(2) 空指针“NULL ”是一特殊的指针数据,表示空地
址,相当于整型数据中的0,字符数据中的空格。
第10章指针类型
(3) 指针变量只能用于存放指定类型数据的地址。
如以上定义的一些指针变量,p1 、p2 、p3 只能存放整
型数据的地址,q1 、 q2 、 q3只能存放实型数据的地
址,r1 、r2 、r3 只能存放字符型数据的地址,t1 、t2 、
t3只能存放struct date型数据的地址。
第10章指针类型
(4) 指针变量不能直接赋以具体地址值,不能从键
盘输入值。指针变量通过间接赋以相关数据的地址,
或调用存储空间分配函数得到值。例如:
int i,j ,k ;
int p1=i , p2=j , p3=k ;/ p1 得到i 的地
* * * *
址,p2得到j 的地址,p3得到k 的地址*/
第10章指针类型
(5) 指针类型隐含在指针变量的定义中。例如,在上
面定义指针变量p1 、p2 、p3 时,实际上在背后隐含定义
了一指向整型数据的指针类型,从形式上可以将int 看成
*
是指向整型数据的指针类型。
与数组定义一样,通过typedef 可以将指针类型与指
针变量分离。例如,上面定义的指针变量p1 、p2 、p3 ,
可以改用如下形式:
typedef int *INTPOINT ;
INTPOINT p1 ,p2 ,p3 ;
第10章指针类型
(6) 指针变量本身占有2字节的存储空间。
(7)“void * ”指针类型定义的指针变量,不指向哪一
种特定类型的数据,在实际使用时通过强制类型转换
成指向特定类型的数据。
第10章指针类型
2. 指针变量所指向的变量特定类型的数据
例如,对指针变量p1 、p2
您可能关注的文档
- 数学考试得高分的秘诀.pdf
- 数学补充知识 1.pdf
- 数学第二讲部分图象平移.ppt
- 数学解题中的“退”字诀.pdf
- 数学笔记解析II.pdf
- 数学语言障碍初探_吴有昌.pdf
- 数学期中满分冲刺卷三.doc
- 数学问题与解答 2014年第6期问题解答.pdf
- 数学:16.1《分式》(第1课时)课件(人教新课标八年级下).ppt
- 数学:1.3.2《杨辉三角与二项式系数的性质》(二)课件(人教a版选修).ppt
- 人教版九年级英语Unit 4曾害怕课件3a-4c.pdf
- 雅思口语考题回顾:朗阁海外考试研究中心2019年10月10日Part 1考题总结.pdf
- 2026届高三地理一轮复习课件小专题河流袭夺.pptx
- 【名师原创】复习专题5 三角函数 作者:合肥市第八中学 蒲荣飞名师工作室.docx
- 高中数学一轮复习 微专题2 抽象函数.docx
- 高中数学——复习专题4 空间向量与立体几何.docx
- 高中数学一轮复习 微专题3 空间几何体中的截面、轨迹问题.docx
- 高中数学一轮复习 微专题4 空间几何体的最值、范围问题.docx
- 导流洞施工质量通病防治手册.docx
- 江苏省徐州市第一中学、徐市第三中学等五校2026届高三上学期12月月考历史试题含答案.docx
原创力文档

文档评论(0)