李连杰的二级指针,二级指针的用途,多级指针的定义使用,数组与指针的区别,void 类型指针,引用
Posted Respect@
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了李连杰的二级指针,二级指针的用途,多级指针的定义使用,数组与指针的区别,void 类型指针,引用相关的知识,希望对你有一定的参考价值。
二级指针
二级指针也是一个普通的指针变量,只是它里面保存的值是另外一个一级指针的地址
二级指针的用途:
- 普通指针可以将变量通过参数“带入”函数内部,但没办法将内部变量“带出”函数
- 二级指针可以不但可以将变量通过参数函数内部,也可以将函数内部变量 “带出”到函 数外部。
多级指针的定义、使用
数组与指针的区别
数组:数组是用于储存多个相同类型数据的集合。
指针:指针是一个变量,但是它和普通变量不一样,它存放的是其它变量在内存中的地址。
- 赋值数组:只能一个一个元素的赋值或拷贝 指针:指针变量可以相互赋值
- 表示范围 数组有效范围就是其空间的范围,数组名使用下表引用元素,不能指向别的数组 指针可以指向任何地址,但是不能随意访问,必须依附在变量有效范围之内
- sizeof 数组:数组所占存储空间的内存:sizeof(数组名) 数组的大小:sizeof(数组名)/sizeof(数据类型) 指针:在 32 位平台下,无论指针的类型是什么,sizeof(指针名)都是
- 在 64 位平台下,无论指针的类型是什么,sizeof(指针名)都是 8.
指针数组和数组指针 针指数组:
int *qishou[2];//定义一个有两个元素的指针数组,每个元素都是一个指针变量
int girl1= 167;
int girl2 = 171;
qishou[0] = &girl1;
qishou[1] = &girl2;
数组指针: int (*p)
[3]; //定义一个指向三个成员的数组的指针 访问元素的两种方式: int A[4][3]={{173, 158, 166},
{168, 155, 171},
{163, 164, 165},
{163, 164, 172}};
p = &A[0];
数组法: (*p)[j] 指针法: *((*p)+j)
void 类型指针
void => 空类型
void* => 空类型指针,只存储地址的值,丢失类型,无法访问,要访问其值,我们必须对这个指 针做出正确的类型转换,然后再间接引用指针。
所有其它类型的指针都可以隐式自动转换成 void 类型指针,反之需要强制转换
引用
引用专题
变量名回顾 变量名实质上是一段连续存储空间的别名,是一个标号(门牌号) 程序中通过变量来申请并命名内存空间 通过变量的名字可以使用存储空间 问题 1:对一段连续的内存空间只能取一个别名吗?
1 引用概念
a) 在C++中新增加了引用的概念
b) 引用可以看作一个已定义变量的别名
c) 引用的语法:Type& name = var;
d) 引用做函数参数那?(引用作为函数参数声明时不进行初始化)
引用的本质
以上是关于李连杰的二级指针,二级指针的用途,多级指针的定义使用,数组与指针的区别,void 类型指针,引用的主要内容,如果未能解决你的问题,请参考以下文章