请各位评评这道面试题
某个程序片段,定义了以下变量。
char *pc1 = NULL, *pc2 = NULL;
int *pi1 = NULL, *pi2 = NULL;
char c1 = '0', c2 = '1', c3 = '2', c4 = '3';
int i1 = 1, i2 = 65536;
某次运行时,变量在内存中分布如下:
============================
变量: 地址 : 值
----------------------------
pc1 : 0x00136f3c : 0
: 0x00136f3b : 0
: 0x00136f3a : 0
: 0x00136f39 : 0
pc2 : 0x00136f38 : 0
: 0x00136f37 : 0
: 0x00136f36 : 0
: 0x00136f35 : 0
pi1 : 0x00136f34 : 0
: 0x00136f33 : 0
: 0x00136f32 : 0
: 0x00136f31 : 0
pi2 : 0x00136f2f : 0
: 0x00136f2e : 0
: 0x00136f2d : 0
: 0x00136f2c : 0
c1 : 0x00136f2b : 48
c2 : 0x00136f2a : 49
c3 : 0x00136f29 : 50
c4 : 0x00136f28 : 51
i1 : 0x00136f27 : 1
: 0x00136f26 : 0
: 0x00136f25 : 0
: 0x00136f24 : 0
i2 : 0x00136f23 : 0
: 0x00136f22 : 0
: 0x00136f21 : 1
: 0x00136f20 : 0
============================
接着,有下列语句。
pc1 = &c1;
c1 = 36;
c2 = 111;
c3 = 19;
c4 = 0;
pi1 = (int*)pc1;
i1 = *pi1;
pc2 = (char*)i1;
pi2 = (int*)(pc2 + 1);
i1 = *pi2;
============================
以十六进制方式
写出下列表达式
在执行完上述语句后
的值
&i1 : 0x_______
i1 : 0x_______
&c2 : 0x_______
c2 : 0x_______
&c4 : 0x_______
c4 : 0x_______