一级指针,二级指针,指针数组,数组和指针
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一级指针,二级指针,指针数组,数组和指针相关的知识,希望对你有一定的参考价值。
指针是个用来存放地址的变量;
&arr表示整个数组;
arr数组名表示首元素的地址;
指针解引用即表示指针所指向的内容
比如:char ptr="abcdef";
ptr; //指针解引用即表示它所指向的内容,即abcdef
ptr; //ptr里保存的是字符串的地址
2.一级指针
一级指针就是指指针,里面放的就是元素的地址,我们可以通过访问元素的地址来找到该地址里存放的内容,即元素本身。
比如:char str1[ ]={1,2,3,4,5,6,7};
3.二级指针
二级指针就是指向一级指针的指针,里面保存的是一级指针变量的内存地址
比如:int a=10;
int pa=&a;
int *ppa=&pa;//表示a的地址存放在pa中,pa的地址存放在ppa中,pa是一 //级指针,ppa是二级指针.
4.指针数组
首先,指针数组是一个数组,数组的元素每一个都是指针类型,这里的指针是用来修饰数组的,在32位平台下,指针占4个字节的大小。
比如:char arr[4]={"hello","world"};//这里的arr是一个指针数组,它里面有两个元素,每个元素都是一个指针类型。
那么,如何判别一个数组是否是指针数组呢?
最好的方法就是加上(),比如:char(arr[4]);其次我们可以也根据符号和[ ]
的优先级来确定其结合性。
以上是关于一级指针,二级指针,指针数组,数组和指针的主要内容,如果未能解决你的问题,请参考以下文章
C 语言二级指针案例 ( 字符串切割 | 返回 自定义二级指针 作为结果 | 每个 一级指针 指向不同大小内存 | 精准分配每个 一级指针 指向的内存大小 )