69,373
社区成员
发帖
与我相关
我的任务
分享
为什么我第二个输出cout < <"apple的内容是:" < <*apple < <"\n";结果是banana的值呢? *apple不是应该指的是指针apple的内容也就是banana的地址吗?
//*apple 取的是值!!&apple取的才是地址。
#include <iostream.h>
main()
{
int *apple; //声明了一个指向int数据类型的指针变量,名字为apple
int banana=5; //声明了一个整型变量,名字为banana,内容为5
apple=&banana; //现在让指针变量的内容成为banana的地址
cout <<"apple的地址是:" <<&apple <<"\n"; //输出指针变量apple的地址
cout <<"apple的内容是:" <<*apple <<"\n"; //输出指针变量apple的内容,但是用错了,应该用<<apple,要知道*apple指的是指针变量apple所指向的整型变量(banana)的值,所以是5
cout <<"banana的地址是:" <<&banana <<"\n"; //输出整型变量banana的地址,与apple的内容相同
cout <<"banana的内容是:" <<banana <<"\n"; //输出整型变量banana的内容,是5
}