main()函数里的a一直都是1,没有改变,是实参;传递到函数fun里的p是形参,形参p只在fun()函数里被赋值为d++,也就是3,输出3,不影响main()函数里的a。
因为传进函数的是形参,并不改变值原来的大小若要改变a的大小,fun的形式应该是void fun(int &p);