c++中整数占几字节

haha1699 2009-01-05 08:45:11
中午看了下学弟的c+=考卷,其中有道题让我很困惑,题目大概是这样的:

假使整数数组a首元素的地址为x,那a[4]的地址是多少:(单选)
a x+6 b x+8 c x+16 d x+24

我记得C++中没有明确规定int型占了几字节,是根据编译器决定的,可能2字节也可能4字节,反正是比short长比long短

...全文
488 32 打赏 收藏 转发到动态 举报
写回复
用AI写文章
32 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjf091 2010-01-05
  • 打赏
  • 举报
回复
可怜
yc406740872 2009-01-06
  • 打赏
  • 举报
回复
这个和编译器有关,C++中规定int为4个字节,可是对不同的编译有不同的结果,常用的编译器有gcc、dev-c++、VC,在VC中,int 是占4个字节
shexinwei 2009-01-06
  • 打赏
  • 举报
回复
16位计算机:int和short均为2byte
32位计算机:short为2byte,int 为4byte
  • 打赏
  • 举报
回复
哎,默认32位编译器啦,所以是x+16咯
herman~~ 2009-01-06
  • 打赏
  • 举报
回复
跟编译器有关
不过是C++的题 一般都32位的编译器了 应该是4
alexhilton 2009-01-06
  • 打赏
  • 举报
回复
4, 这是通用标准
「已注销」 2009-01-06
  • 打赏
  • 举报
回复
标准C中没有对int的具体字长做规定,这个是和CPU的字长相关的,一般的32位机是4个字节
sukekiyo 2009-01-06
  • 打赏
  • 举报
回复
64位的系统下面 int 还是4个字节
三文鱼也会飞 2009-01-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 waizqfor 的回复:]
跟编译器有关 不过是C++的题 一般都32位的编译器了 应该是4
[/Quote]

跟编译器有关
lsd1025 2009-01-06
  • 打赏
  • 举报
回复
题目有问题,你知道了就行了。
icesky_ff 2009-01-06
  • 打赏
  • 举报
回复
跟环境有关 不过现在基本上不会用TC了吧 VC跟GCC比较多
netclose 2009-01-06
  • 打赏
  • 举报
回复
不懂,up
noenoughmemory 2009-01-06
  • 打赏
  • 举报
回复
不懂,up
nullah 2009-01-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 Chiyer 的回复:]
和编译器相关

tc 是2byte
vc/gcc 是4byte
[/Quote]
up
kircheis_tree 2009-01-05
  • 打赏
  • 举报
回复
现在一般都用32位的编译器,答案写成x + 4 * sizeof(int)比较好.
jackzhhuang 2009-01-05
  • 打赏
  • 举报
回复
x + sizeof(int) * 4

大学老师根本不关心这个,直接拿书上的“结论”考学生,结果学生都认为这样理所当然。

实际开发中,若是写x + 16基本上就可以认定是一个不合格的程序员。
Yanger_xy 2009-01-05
  • 打赏
  • 举报
回复
根据编译器情况而定一般的是32字节的
Crazying111 2009-01-05
  • 打赏
  • 举报
回复
tc :2byte
vc :4byte
littlefish0101 2009-01-05
  • 打赏
  • 举报
回复
根据编译器情况定啊,16位编译器是2字节,32位编译器是4字节!
neeestth 2009-01-05
  • 打赏
  • 举报
回复
16位 x+8
32位 x+16
加载更多回复(12)

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧