|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ *p=&x和p=&x的区别
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
13587
人关注过本帖
标题:
*p=&x和p=&x的区别
只看楼主
加入收藏
摩登程序猿
来 自:梦的小镇
等 级:
新手上路
帖 子:41
专家分:4
注 册:2013-7-23
结帖率:
90%
楼主
收藏
已结贴
√
问题点数:20 回复次数:10
*p=&x和p=&x的区别
*p=&x和p=&x的区别,
搜索更多相关主题的帖子:
徐州
2013-11-20 22:35
举报帖子
使用道具
赠送鲜花
木棉田
等 级:
新手上路
帖 子:1
专家分:5
注 册:2013-11-20
第
2
楼
收藏
得分:5
如果x是变量,第二个是一级指针,第一个是二级指针,但我不确定能不能这样写
2013-11-20 23:05
举报帖子
使用道具
赠送鲜花
飞羽络辰
来 自:河南濮阳
等 级:
论坛游民
帖 子:15
专家分:18
注 册:2013-11-19
第
3
楼
收藏
得分:5
*p=&x不能这样写,编译的时候有错误,&x表示x的地址,而*p表示的p指向的一个指针变量,二者不可这样赋值。
简单可依赖!!!
2013-11-20 23:12
举报帖子
使用道具
赠送鲜花
heroinearth
来 自:云南曲靖
等 级:
青峰侠
帖 子:430
专家分:1506
注 册:2011-10-24
第
4
楼
收藏
得分:0
*p=&x 如果不是出现在定义语句中,p是一个指向指针的指针,表示把x的地址赋值给p所指向的指针,它的定义如:int **p ;如果是在定义语句中,如:int *p=&x,p只是一个指向整形的指针。
p=&x 表示把x的地址赋值给指针p
2013-11-21 09:01
举报帖子
使用道具
赠送鲜花
qunxingw
等 级:
贵宾
威 望:
24
帖 子:1676
专家分:7295
注 册:2011-6-30
第
5
楼
收藏
得分:0
声明和赋值同时进行用左式,
先声明后再赋值用右式。
不知是否是问这个?
www.qunxingw.wang
2013-11-21 12:15
举报帖子
使用道具
赠送鲜花
韶志
来 自:斗气大陆
等 级:
贵宾
威 望:
44
帖 子:2223
专家分:13592
注 册:2013-3-22
第
6
楼
收藏
得分:10
额
&x 表示x的地址
而指针 p 本来就表示地址
所以 p=&x
那么
输出 p 就是 x的地址
而
*p 表示 p 所指向地址的内容,*p=&x 就是把 x 的地址存到了“内容”里
所以
输出 *p 也是 x的地址
三十年河东,三十年河西,莫欺少年穷!
2013-11-21 12:55
举报帖子
使用道具
赠送鲜花
韶志
来 自:斗气大陆
等 级:
贵宾
威 望:
44
帖 子:2223
专家分:13592
注 册:2013-3-22
第
7
楼
收藏
得分:0
补充一句,
p 之前必须有所指向
(例如:p=&a;)
不然 *p 操作无法执行
因为 p 没有地址的话 就没有内容
三十年河东,三十年河西,莫欺少年穷!
2013-11-21 13:00
举报帖子
使用道具
赠送鲜花
摩登程序猿
来 自:梦的小镇
等 级:
新手上路
帖 子:41
专家分:4
注 册:2013-7-23
第
8
楼
收藏
得分:0
回复 7楼 韶志
等我回家把原题粘上来,我还是有些不明白。原题好像*pk=&k,k=2, 最后执行时出现*pk时
我就想问到底是k的内容 还是k得地址。
菜鸟出蛋------多多指教.我希望我能在这论坛先坚持三年,那证明我没忘记我的梦
2013-11-21 13:34
举报帖子
使用道具
赠送鲜花
韶志
来 自:斗气大陆
等 级:
贵宾
威 望:
44
帖 子:2223
专家分:13592
注 册:2013-3-22
第
9
楼
收藏
得分:0
回复 8楼 摩登程序猿
你 k 前面加了取址符 &
当然是 k 的地址啦...
三十年河东,三十年河西,莫欺少年穷!
2013-11-21 13:38
举报帖子
使用道具
赠送鲜花
摩登程序猿
来 自:梦的小镇
等 级:
新手上路
帖 子:41
专家分:4
注 册:2013-7-23
第
10
楼
收藏
得分:0
回复 9楼 韶志
#include<stdio.h>
main()
{int k=2,m=4,n=6,*pk=&k,*pm=&m,*p;
*(p=&n)=*pk*(*pm);
printf("%d\n",n);
}结果是8
其实我就想知道算*pk*(*pm)时是2*4,不是&k*&m。
有人说 int *pk=&k; 其实就是 int *pk, pk=&k;是不是这样
菜鸟出蛋------多多指教.我希望我能在这论坛先坚持三年,那证明我没忘记我的梦
2013-11-21 19:56
举报帖子
使用道具
赠送鲜花
11
1/2页
1
2
快速回复:
*p=&x和p=&x的区别
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.051246 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved