首页 > 试题广场 >

在32位系统中以下函数的返回值 int fun(void)

[单选题]
在32位系统中以下函数的返回值是()
int fun(void) {
    int *p, j, i=10;
    p = &j;
    *p = i++;
    i += sizeof(i) + sizeof(*p) + sizeof(p);
    return i;
}
  • 22
  • 23
  • 25
  • 其他结果都不对
*p = i++;所以*p = 10, i = 11;
int型4个字节 所以sizeof(i)和sizeof(*p) 都为4
系统是32位  所以sizeof(p)为32位4个字节;
所以i = i + 4 + 4 + 4 = 23

发表于 2018-09-10 12:25:00 回复(0)
我眼瞎
发表于 2022-05-11 21:42:44 回复(5)
11+4+4+4=23
发表于 2023-11-01 22:44:11 回复(0)
32位系统下,int类型 4字节,指针类型4字节。
结果=11+4+4+4
发表于 2023-10-15 20:17:42 回复(0)
11+4+4+4
发表于 2023-07-25 23:19:24 回复(0)
为什么*p = i++;之后i=11能代入到下一步
发表于 2023-03-09 10:45:58 回复(0)