作业帮 > 综合 > 作业

int *p1;int x=971; p1=&x,printf("%d",*(p1++));

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/23 13:12:50
int *p1;int x=971; p1=&x,printf("%d",*(p1++));
结果是971啊,p1在你输出之后值(此时p1是地址)加一,你可以
p1=&x,
cout<<p1<<endl;
cout<<*(p1++)<<endl;
cout<<p1<<endl;
两次输出的p1的地址不一样
再问: 第二次地址是p1+1的话,对应的值为什么还是971
再答: 他是先使用p1的地址,再使p1加一,跟++p不一样
再问: 不好意思,忘输了,如果再加一个p
再问: 再加一个printf(“%d”,*(p1++))结果还一样吗?971?
再答: 不一样啊,那个地址你没赋值,就是系统随机的一个值
再问: 呃,解决了。非常感谢您。