【发布时间】:2016-05-16 14:18:39
【问题描述】:
例如
printf("%u",&a);
给我输出
65524
这是一个 16 位地址。
【问题讨论】:
-
不是每个人都可以坐在前排... ;-)
-
0x0000000000000000 是 64 位地址,不是吗?它等于 0x0。
-
"如果我的电脑是 32 位系统,它有一个 32 位地址,对吗?"可能,但不能保证。 See this。此外,不能保证
unsigned int将是 32 位。 -
因此,如果您打印一个变量并获得值
1,那将是一个 1 位变量吗?而7的值是一个 3 位变量?否 - 您无法通过打印值来确定可用的位数。使用sizeof -
只是出于好奇:你的平台是什么?
标签: c pointers printf format-specifiers