int **a;

 我来答
别思柔
2019-01-03 · TA获得超过174个赞
知道答主
回答量:219
采纳率:98%
帮助的人:49.2万
展开全部

这是典型的c语言指针题

int *a表示定义了一个int型的指针

*a=b表示指针a指向b,即把b赋值给*a;

&是取地址符,&b代表b在内存中的地址,*a=&b表示把b的地址赋值给*a。

利用编译器编译该代码:

结果为:

拓展资料

*和&运算

(*p)操作是这样一种运算,返回p 的值作为地址的那个空间的取值。(&p)则是这样一种运算,返回当时声明p 时开辟的地址。显然可以用赋值语句对内存地址赋值。我们假设有这么两段内存地址空间,他们取值如下:(单位:H,16 进制)

假设有这么一段代码:(假设开辟空间时p 被分配给了3001H、3002H 两个位置)

int *p;

p=2003H;

*p=3000H

**p的值为多少?

**p=*(*(p))=*(*(2003H))=*(3000H)=3000H。

那么&&p、*(&p)和&(*p)又等于多少?

&&p=&(&(p))=&(3001H),此时出错了,3001H 是个常数怎么可能有地址呢?

*&p=*(&(p))=*(3001H)=2003H,也就是*&p=p。

资料来自于:百度百科:指针



已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式