| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 481 人关注过本帖
标题:关于指针的另一个小问题
只看楼主 加入收藏
夜长风
Rank: 2
等 级:论坛游民
帖 子:46
专家分:37
注 册:2013-6-12
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:6 
关于指针的另一个小问题
main()
{
int **k,*a,b = 100;
a = &b;k = &a;
printf("%d\n",**k);
}
这个值最终是100,也是看半天看不懂,感觉指针真的是很绕
2013-06-24 14:53
wyw19880809
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:3
帖 子:178
专家分:738
注 册:2013-3-14
收藏
得分:0 
二级指针的问题。**k=*(*(&a))=*(&b) = b;
2013-06-24 15:25
yuhaibinhf
Rank: 2
等 级:论坛游民
帖 子:34
专家分:29
注 册:2011-4-7
收藏
得分:0 
同2楼,二级指针的问题,就是指向 指针 的 指针
比如:* * p;     * p;   p = a; 指针变量 p 储存的是 a 的地址
* p 就是指向 a 的元素值,即指针变量的 值,  * * p == * (* p)  就是指向 指针变量 值 的指针
* 是 指向符号, p 是指针变量  手打好累...
2013-06-24 15:55
夜长风
Rank: 2
等 级:论坛游民
帖 子:46
专家分:37
注 册:2013-6-12
收藏
得分:0 
回复 3楼 yuhaibinhf
main()
{
int **k,*a,b = 100;
a = &b;k = &a;
printf("%d\n",**k);
}
这其实就是100赋值给b,然后因为*a是个指针变量,而*a指向的地址是b这个变量,所以可以有a = &b即a = b = 100?(这样理解有误不?)所以同理**k和前面就一样类似。这样理解对吗?
2013-06-25 15:46
夜长风
Rank: 2
等 级:论坛游民
帖 子:46
专家分:37
注 册:2013-6-12
收藏
得分:0 
main()
{
int **k,*a,b = 100; (1
a = &b;k = &a; (2
printf("%d\n",**k); (3
}
如果再(1这里没说明*a是指针变量,那么(2这里就不会有a = &b 对吧?
2013-06-25 15:50
lzj12530
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:264
专家分:841
注 册:2013-3-28
收藏
得分:5 
main()                             
 {
 int **k,*a,b = 100;               //声明k为指向指针*k的指针,a为指针,b为整形变量
 a = &b;k = &a;                   //取变量b地址赋予a,即a指向b变量。 取指针a的地址赋予k,即k指向a;而a又是指向b,因此k最终的结果是b变量的值
 printf("%d\n",**k);             //a是指针,*a 就是指向的值. k是指向指针的指针 *k是指向值的指针,**k就是值
 }

C++菜鸟
2013-06-25 22:26
yuhaibinhf
Rank: 2
等 级:论坛游民
帖 子:34
专家分:29
注 册:2011-4-7
收藏
得分:5 
楼主 5楼的 说法应该是对的,任何问题都是 因果关系,没有 1 就没有 2, 就赋值来说,变量 可以赋给 变量,变量可以赋给指针, 地址可以赋给指针,
a = &b; 就是把地址 赋给指针变量 a, 地址不能赋给普通变量,而指针变量本来就是 用来指向储存地址调用元素值的
还有,回楼主的 4 楼, a = b = 100; 这个是不对的,首先必须了解指针的概念,指针是指向和储存元素地址的,
输出时必须 统一数据类型,如: * p, p 是指针变量,储存地址,* p 是指向地址调用地址中的 值
2013-06-25 22:42
快速回复:关于指针的另一个小问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.069284 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved