| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 341 人关注过本帖
标题:关于地址的问题
只看楼主 加入收藏
msl12
Rank: 1
等 级:新手上路
帖 子:152
专家分:0
注 册:2015-2-6
结帖率:25%
收藏
 问题点数:0 回复次数:6 
关于地址的问题
比如:&i=1638212;
能不能查看1638213这个地址指向的值?(我感觉应该还是它自己,有办法实现这个+1的行动么,而不是+1后跳过4个字节了)
2015-03-21 14:26
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
当然可以了 如果这个地址不可读 那么程序就崩溃退出了
2015-03-21 14:27
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:0 
&i=1638212这样的语句真能通过编译?我知道c++中的引用可以把&作为左值,地址可以直接这样赋值吗?
求解

一片落叶掉进了回忆的流年。
2015-03-21 15:39
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
以下是引用诸葛欧阳在2015-3-21 15:39:07的发言:

&i=1638212这样的语句真能通过编译?我知道c++中的引用可以把&作为左值,地址可以直接这样赋值吗?
求解

不能 可以这样

    printf("%x\n", *(int *)1638212);

但还是那话 能不能运行就不知道了
2015-03-21 19:43
msl12
Rank: 1
等 级:新手上路
帖 子:152
专家分:0
注 册:2015-2-6
收藏
得分:0 
回复 3楼 诸葛欧阳
这不是直接赋值哈,我只是一个说明,搞错了,就是说一个变量i的地址为那个而已。。
2015-03-21 22:50
msl12
Rank: 1
等 级:新手上路
帖 子:152
专家分:0
注 册:2015-2-6
收藏
得分:0 
回复 4楼 zklhp
咦,这个语句是什么意思?
2015-03-21 22:54
monitorsdio
Rank: 2
等 级:论坛游民
帖 子:7
专家分:12
注 册:2015-2-10
收藏
得分:0 
*((int *)(void *)1638212) += 1;
這樣吧!
2015-03-21 23:06
快速回复:关于地址的问题
数据加载中...
 
   



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

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