遇到的几个奇怪的笔试题


参加某笔试,遇到一些奇怪的笔试题:
第一题:

int main()
{
     int i=320;
     char *ptr = (char*)&i;
     printf("%d",*ptr);
}
输出是64;
如果是采用大端存储的方式,是否还是64呢?

第二题:

int array[] = {10,20,20,40};
printf("%d",-2[array]);

输出是-20;这个结果与printf("%d",-array[2])相同,没弄明白这是为什么?

第三题:

class Foo
{
 public:
      char c;
      static double sd;
      double d;
      int i;
};

int main()
{
     Foo f = {72,3.14};
     cout<

为什么能这么初始化,没弄明白~

你可能感兴趣的:(语言学习)