多级指针的定义和变量定义
1个回答
展开全部
设有基类型为int的指针变量p定义如下:
int *p,n;
变量p的类型为int*,指针变量p可存贮一个int类型变量(例如n)的地址:
p=&n; /* n的地址存贮到指针p中,即,使p指向n */
记p的类型(int*)为T,即,p是T类型的变量。
可使用基本运算(&)
&p
来计算指针变量p的地址。上面基本运算的结果是T* 类型的,即,是
T* ≡ (int*)* ≡ int**
类型的,即是基类型为int的指针变量的地址,是基类型为int的二级指针。
若要把上面的计算结果存贮到一个变量中,我们需要定义一个T*类型的
指针变量,例如q:
T *q; ≡ (int*)*q; ≡ int **q;
变量q被称为基类型为int的二级指针变量。
下面的处理使q指向p:
q=&p;
下图描述了int类型变量n、基类型为int的一级指针p、基类型为int的
二级指针q之间的关系:
一般地,K级指针变量的地址是K+1级指针类型的。实用上,二级指针的使用 最为广泛,三级以上的指针很少使用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询