C语言处理指针问题中,二级指针与一级指针的区别是什么?
7个回答
展开全部
1、一级指针就是指指针,就是内存地址,二级指针就是指向指针的指针,就是地址的地址,打个比方,有一个箱子,里面有要的东西,钥匙能打开箱子,钥匙就是一级指针,你要用钥匙打开别的箱子去拿到开要的东西的箱子的钥,那手上的钥匙就是二级指针,如此类推。
2、例如:
int a; //a是一个int类型的变量,它的值是一个整数
int *pa = &a; //pa 是一个int *类型的变量,它的值是一个int型变量的地址
int **ppa = &pa; //ppa是一个int **型的变量,它的值是一个int *型变量的地址
2、例如:
int a; //a是一个int类型的变量,它的值是一个整数
int *pa = &a; //pa 是一个int *类型的变量,它的值是一个int型变量的地址
int **ppa = &pa; //ppa是一个int **型的变量,它的值是一个int *型变量的地址
展开全部
一级指针里存放的是一个地址,这个地址就是该指针指向的目标变量的地址;二级指针的第一级指针里存放的也是一个地址,但这个地址是另一个指针变量(称二级指针)的地址,这“另一个指针”里存放的才是这个指针(就是二级指针)指向的目标变量的地址。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一级指针是存储变量地址;你可以再把一级指针看成一个变量,二级指针存储一级指针的地址。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
关于指针别想复杂了,其实就是一个普通变量而已
int a; //a是一个int类型的变量,它的值是一个整数
int *pa = &a; //pa 是一个int *类型的变量,它的值是一个int型变量的地址
int **ppa = &pa; //ppa是一个int **型的变量,它的值是一个int *型变量的地址
int a; //a是一个int类型的变量,它的值是一个整数
int *pa = &a; //pa 是一个int *类型的变量,它的值是一个int型变量的地址
int **ppa = &pa; //ppa是一个int **型的变量,它的值是一个int *型变量的地址
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-11-25
展开全部
从变量的角度来理解:
int* p1;
int** p2;
int* 指向整型变量的指针变量
int* *指向整型变量的指针变量的指针变量.
应用上的区别, 主要是前者可以一次去引用,后者可以两次去引用.
比分说:
int a = *p1; // 一次去引用
int* b = *p2; //一次去引用
int c = *b = **p2; // 二次去引用
int* p1;
int** p2;
int* 指向整型变量的指针变量
int* *指向整型变量的指针变量的指针变量.
应用上的区别, 主要是前者可以一次去引用,后者可以两次去引用.
比分说:
int a = *p1; // 一次去引用
int* b = *p2; //一次去引用
int c = *b = **p2; // 二次去引用
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询