crsmm03 发表于 2015-6-11 20:45:35

【求教】C语言上的问题

求教:



      int ai={0,11,12,13,14,5,6,7,8,9,10};
        int* pi=&ai ;
      printf("%d,%d,%d\n",*pi,*pi--,*pi--);
怎么输出的结果是8,9,10呢
哪位大侠帮忙解释下看看哪不对。

哥斯拉不说话 发表于 2015-6-11 21:23:49

VC6 输出结果为 10,10,10,是编译器优化的问题,不同编译器会输出不同的结果。汇编代码如下:
页: [1]
查看完整版本: 【求教】C语言上的问题