#include void f(int *p,int*q); main() {int m=1,n=2,*r=&m; f(r,&n);printf("%d,%d",m,n);}#include void f(int *p,int*q);main(){int m=1,n=2,*r=&m;f(r,&n);printf("%d,%d",m,n);}void f(int *p,int *q){p=p+1;*q=*q+1;}运行后的结果是A 1,3 B 1,2 说说为
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/04 08:00:08
![#include void f(int *p,int*q); main() {int m=1,n=2,*r=&m; f(r,&n);printf(](/uploads/image/z/3648517-61-7.jpg?t=%23include+void+f%28int+%2Ap%2Cint%2Aq%29%3B+main%28%29+%7Bint+m%3D1%2Cn%3D2%2C%2Ar%3D%26m%3B+f%28r%2C%26n%29%3Bprintf%28%22%25d%2C%25d%22%2Cm%2Cn%29%3B%7D%23include+void+f%28int+%2Ap%2Cint%2Aq%29%3Bmain%28%29%7Bint+m%3D1%2Cn%3D2%2C%2Ar%3D%26m%3Bf%28r%2C%26n%29%3Bprintf%28%22%25d%2C%25d%22%2Cm%2Cn%29%3B%7Dvoid+f%28int+%2Ap%2Cint+%2Aq%29%7Bp%3Dp%2B1%3B%2Aq%3D%2Aq%2B1%3B%7D%E8%BF%90%E8%A1%8C%E5%90%8E%E7%9A%84%E7%BB%93%E6%9E%9C%E6%98%AFA+1%2C3+B+1%2C2+%E8%AF%B4%E8%AF%B4%E4%B8%BA)
#include void f(int *p,int*q); main() {int m=1,n=2,*r=&m; f(r,&n);printf("%d,%d",m,n);}#include void f(int *p,int*q);main(){int m=1,n=2,*r=&m;f(r,&n);printf("%d,%d",m,n);}void f(int *p,int *q){p=p+1;*q=*q+1;}运行后的结果是A 1,3 B 1,2 说说为
#include void f(int *p,int*q); main() {int m=1,n=2,*r=&m; f(r,&n);printf("%d,%d",m,n);}
#include
void f(int *p,int*q);
main()
{int m=1,n=2,*r=&m;
f(r,&n);printf("%d,%d",m,n);}
void f(int *p,int *q)
{p=p+1;*q=*q+1;}
运行后的结果是A 1,3 B 1,2 说说为什么
#include void f(int *p,int*q); main() {int m=1,n=2,*r=&m; f(r,&n);printf("%d,%d",m,n);}#include void f(int *p,int*q);main(){int m=1,n=2,*r=&m;f(r,&n);printf("%d,%d",m,n);}void f(int *p,int *q){p=p+1;*q=*q+1;}运行后的结果是A 1,3 B 1,2 说说为
结果A
在函数f里,p操作的是地址,而p指向的值并没有改变
*q操作是q指向的值,改变了该地址的值
r是m的地址,但m的值没变,n地址指向的值+1