📜  C |指针基础问题7

📅  最后修改于: 2021-06-29 02:20:40             🧑  作者: Mango

#include 
int main() 
{ 
   int a; 
   char *x; 
   x = (char *) &a; 
   a = 512; 
   x[0] = 1; 
   x[1] = 2; 
   printf("%d\n",a);   
   return 0; 
}

上面程序的输出是什么?
(A)取决于机器
(B) 513
(C) 258
(D)编译器错误答案: (A)
说明:在小端机中,输出为513。要了解此输出,请使用16位存储整数。在小端机中,当我们使x [0] = 1且x [1] = 2时,数字a更改为00000001 00000010,这是小端机中513的表示形式。

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。