求解一道题,关于指针的

efaneda 2007-08-24 10:03:03
#include <stdio.h>

void main()
{
static int a[] = {2, 4, 6, 8, 10}, *p, **k;
p = a;
k=&p;
printf("%d\n", **k);

}

如何求输出结果?求解
...全文
193 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
woaiaabbc 2011-02-20
  • 打赏
  • 举报
回复
不懂 围观
foru111111 2007-08-25
  • 打赏
  • 举报
回复
k=&p==>

*k=*(&p)=p=a=&a[0]==>

**k=*p=*(&a[0])=a[0]=2==>
plusboy 2007-08-24
  • 打赏
  • 举报
回复
正解
scrutin 2007-08-24
  • 打赏
  • 举报
回复
ls的都解释的很清楚
GodGiveMeAID 2007-08-24
  • 打赏
  • 举报
回复
2,数组名a指向数组的首地址,p=a则p也指向数组的首地址,指针型指针k赋值p的地址,则**k为a[0]
subchap 2007-08-24
  • 打赏
  • 举报
回复
可以这么想,p里保存的是a数组的首地址,也是第一个数据的地址,k里保存的是p的地址,
所以:
k是p的地址,
*k是p的值,也就是a数组的第一个数据的地址,
**k就是a数组的第一个数据的值,就是2.
gfxiang 2007-08-24
  • 打赏
  • 举报
回复
**k ==>
*p ==>
a[0]
故输出2

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧