C++编译器与C编译器的区别

以下是在C++编译器中的操作(看后缀):

C++编译器与C编译器的区别

C++编译器给出的运行结果:

C++编译器与C编译器的区别

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

以下是在C编译器中的操作(看后缀):

C++编译器与C编译器的区别

C编译器给出的运行结果:

C++编译器与C编译器的区别

1.C编译器下,输出没问题,可以理解。

2.C++编译器下,*p改变,i值不变,这就不懂了。在改变*p的值之后,指针p指向的内存单元的地址没变并且与i的地址相同,也就是*p和i表示的是同一个地址中的内存单元中的值。而且,在执行完p++后,p的值加4,说明指针p之前指向的是一个int型的内存单元,也就是i所在的内存单元。那么问题来了,为何*p=200 而 i=100 ?