若假设第一个printf语句输出是ffca,则第二个printf语句输出的是ffdc
如果你的编译器是16位int,那p每次+1就是+2个字节,也就是+2个内存单位,因此p+9就是ffca+(2*9)=ffca+12=ffdc,选B项
如果编译器是32位int,p每次+1就是+4字节,+4内存单位,因此p+9就是ffca+(4*9)=ffca+24=ffee,4个选项都错
所以:p+1并不是将p的值简单的加1,而是加上一个数组元素所占用的字节数。
谭浩强C语言第五版第230页有具体说明。