面试题目(一)
今天看到一道比较奇葩的面试题目
#include <stdio.h> void main() { int b = 3; int arr[] = {6 , 7 , 8 , 9 , 10}; int *ptr = arr; *(ptr++) += 123; printf( "%d, %d\n", *ptr, *(++ptr) ); }
答案不是我想的“7, 8”居然是“8 , 8”
最后给出的解释是printf( "%d, %d\n", *ptr, *(++ptr) );这一行是从右往左编译,所以ptr已经++了