社区
C语言
帖子详情
int a;printf("%x\n",&a);输出为什么是6位数?
Roy_Smiling
2011-02-28 12:39:23
如题?我感觉应该是8位数字啊!
...全文
475
14
打赏
收藏
int a;printf("%x\n",&a);输出为什么是6位数?
如题?我感觉应该是8位数字啊!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
AnshuWang
2011-02-28
打赏
举报
回复
没错啊 是六位
昵称很不好取
2011-02-28
打赏
举报
回复
[Quote=引用 4 楼 roy_smiling 的回复:]
再问一下编译后的地址空间是不是0-4G的虚拟地址空间啊?OS调用后怎么转换到实际物理地址空间的呢?是在掉的过程中转换还是运行时运行一句转换一句呢?谁回答了,结贴后分全给了!
[/Quote]
对,是虚拟空间,内存都是采用分页机制,这部分内存可能一部分转为物理内存,也可能转为交换文件。
具体需要看看操作系统知识
昵称很不好取
2011-02-28
打赏
举报
回复
[Quote=引用 5 楼 roy_smiling 的回复:]
引用 3 楼 thefirstz 的回复:
引用 1 楼 roy_smiling 的回复:
我知道了,前面的两个0省去了。
恩,赋值一个大数给a,然后输出a就会有8位了
这是a 的地址唉,跟赋值什么数有关系么?
[/Quote]
这个没啥关系,我的意思是直接赋值a,然后输出a
Roy_Smiling
2011-02-28
打赏
举报
回复
[Quote=引用 3 楼 thefirstz 的回复:]
引用 1 楼 roy_smiling 的回复:
我知道了,前面的两个0省去了。
恩,赋值一个大数给a,然后输出a就会有8位了
[/Quote]
这是a 的地址唉,跟赋值什么数有关系么?
Roy_Smiling
2011-02-28
打赏
举报
回复
再问一下编译后的地址空间是不是0-4G的虚拟地址空间啊?OS调用后怎么转换到实际物理地址空间的呢?是在掉的过程中转换还是运行时运行一句转换一句呢?谁回答了,结贴后分全给了!
昵称很不好取
2011-02-28
打赏
举报
回复
[Quote=引用 1 楼 roy_smiling 的回复:]
我知道了,前面的两个0省去了。
[/Quote]
恩,赋值一个大数给a,然后输出a就会有8位了
昵称很不好取
2011-02-28
打赏
举报
回复
%x表示以十六进制输出
Roy_Smiling
2011-02-28
打赏
举报
回复
我知道了,前面的两个0省去了。
hatname
2011-02-28
打赏
举报
回复
up感觉有什么用呢。
要用事实说话。
事实就是a的地址的16进制只有6位前面2位都为0。
如果要8位可以按11楼那样做。
做这一行的千万不要用自己的感觉去怀疑运行结果
zhengjiankang
2011-02-28
打赏
举报
回复
感觉有什么用呢。
要用事实说话。
事实就是a的地址的16进制只有6位前面2位都为0。
如果要8位可以按11楼那样做。
做这一行的千万不要用自己的感觉去怀疑运行结果。!!
hdusunny44
2011-02-28
打赏
举报
回复
[Quote=引用 4 楼 roy_smiling 的回复:]
再问一下编译后的地址空间是不是0-4G的虚拟地址空间啊?OS调用后怎么转换到实际物理地址空间的呢?是在掉的过程中转换还是运行时运行一句转换一句呢?谁回答了,结贴后分全给了!
[/Quote]
linux下采用写时复制(COW)来分配物理内存,即在需要对虚拟内存进行写操作时,若该虚拟内存未分配物理内存,则系统抛出异常,检验合法性后,通过分配机制把物理内存和虚拟内存进行映射。
赵4老师
2011-02-28
打赏
举报
回复
int a;printf("%08x\n",&a);printf("%p\n",&a);
proghua
2011-02-28
打赏
举报
回复
[Quote=引用 4 楼 roy_smiling 的回复:]
再问一下编译后的地址空间是不是0-4G的虚拟地址空间啊?OS调用后怎么转换到实际物理地址空间的呢?是在掉的过程中转换还是运行时运行一句转换一句呢?谁回答了,结贴后分全给了!
[/Quote]
线性地址到物理地址的转换是通过分页机制实现的
Athenacle_
2011-02-28
打赏
举报
回复
程序在链接的时候就加入的重定向,然后OS在装载的时候就会自动把他的内容映射到相应的地址上。这是虚拟地址。。
OS里的内存管理模块会根据不同的存储方式,如分页等,将虚拟地址转化为物理地址。。
String转
int
本套视频详细讲解了String如何转换成
int
,这在开发实践中会频繁遇到。
int
类型需要从文本框录入,如学生身高,服务器接收到的是String类型,使用时需要转换成
int
类型。 类型转换时需要使用到包装类的方法,8种基本...
pr
int
f
格式化
输出
%x时的分析
使用
pr
int
f
(“%x”,…);...如果使用
pr
int
f
%x
输出
short和char会是什么结果呢? 为此,在VS2015编写简单代码如下:#include <stdio.h> #include <stdlib.h>
int
main() { ...
C语言中
pr
int
f
打印形式(%02X, %2X, %-2X, %.nf, %m.nf, %e, %m.ne, %2d, %-2d, %02d, %.2d)
文章目录%2d,%-2d,%.2d,%02d%2x, %02x, %-2x, %.2x%f, %.nf, %m.nf,%e, %.ne,%m.ne, %2d,%-2d,%.2d,%02d
int
main() {
int
a = 1;
pr
int
f
("%d\n",a);
pr
int
f
("%2d\n",a);
pr
int
f
("%.2d\n", a);
pr
int
f
("%...
pr
int
f
(“%d \n“,
pr
int
f
(“%d “,
pr
int
f
(“%d “,i)));
输出
结果?
通过讨论下面这个代码的
输出
结果,让我们进一步了解一下
pr
int
f
: #include<stdio.h>
int
main() {
int
i=43;
pr
int
f
("%d \n",
pr
int
f
("%d ",
pr
int
f
("%d ",i))); ...
使用
pr
int
f
时怎么控制
输出
位数
和保留小数点
位数
#很多朋友不太明白
pr
int
f
在
输出
单精度或者双精度时应该怎么用 让我们来看一看 #include <stdio.h>...
pr
int
f
("%f\n,%12f\n,%0000.2f\n,%-12.2f\n,%.2f\n",x,x,x,x,x); return 0; } 123...
C语言
69,369
社区成员
243,082
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章