网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
05月03日
漏签
0
天
c语言吧
关注:
799,008
贴子:
4,355,017
看贴
图片
吧主推荐
视频
游戏
8
回复贴,共
1
页
<<返回c语言吧
>0< 加载中...
ptr高32位何时变为0的?
只看楼主
收藏
回复
遂逸
帕秋莉糕
12
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
程序:
#include <stdio.h>
int main(void)
{
int a[4] = {1,2,3,4};
int *ptr = (int *)((unsigned int)a+1);
printf("a=%p\tptr=%p\n",a,ptr);
return 0;
}
linux下64位编译器编译后运行结果为:
ptr的高32位何时称为0的?
汇编如下:
庄政警
异能力者
6
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
这句 int *ptr = (int *)((unsigned int)a+1);
unsigned int 是32位的啊
用unsigned long long int 就好
重庆范本库科技有限公司
2025优质
c语言
大全模板,包含教育题库、合同协议、办公资料、行业资料等文档,内容完整,下载即用!
2025-05-03 11:30
广告
立即查看
广告
立即查看
布吉布吉岛
异能力者
6
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
结果是正确的吧
琉璃易碎心易死
强能力者
7
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
不过我在vs调试下确实观察到mov eax,eax把rax的高32位清掉了。不过eax是rax的低32位,清掉应该是正常的吧?
木乃伊软膏
低能力者
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
看着就是个杂草,你不晕吗?
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示