指针,指针问题(帮灌灌水)
程序代码:
[code]#include<iostream> using namespace std; int main() { int i; i=100; int &j=i; //定义也需赋值; cout<<"j "<<j<<endl; j=200;//引用自己更改自身数值, cout<<"i "<<i<<endl; cout<<"j "<<j<<endl; int k; k=5; //================ const int &h=k;//常量引用,只能够被赋值不能够更改自身的数值,并且在其定义时必须赋值。 cout<<"h "<<h<<endl; k=160;//更改整形变量K的值 cout<<"k "<<k<<endl; cout<<"h "<<h<<endl; //================================= int *p; //定义指针*P p=&j;//指针指向引用j cout<<"*p "<<*p<<endl; *p=105; cout<<"指针第一次更改过数值引用j 值"<<j<<endl; cout<<"指针第一次更改过数值*p "<<*p<<endl; //=============================== //为什么这里指针更改过数值,引用值改了,下面指针更改数值后,k的值没有变化,这个是啥原因?? *p=k; cout<<"*p "<<*p<<endl; k=*p; *p=560; cout<<"指针指向k更改过数值后的值 "<<k<<endl; cout<<"指针更改过数值后*p值 "<<*p<<endl; }这里面指针P的值我改变了一下,为什么被指向的值K的值没有改变
只有他自己变了。我下面又定义了一个指针变量l为什么他又可以
改变别的数值了。难道是因为
指针P指向过一次引用j??
这个是啥原因造成的啊!![/code]