# include void p(int *x,int y){ ++*x; y=y+2; } void main() { int x=2,y=3; p(&y,y); printf("# includevoid p(int *x,int y){++*x;y=y+2;}void main(){int x=2,y=3;p(&y,y);printf("%d#%d",x,y);}
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/30 18:11:18
# include void p(int *x,int y){ ++*x; y=y+2; } void main() { int x=2,y=3; p(&y,y); printf("# includevoid p(int *x,int y){++*x;y=y+2;}void main(){int x=2,y=3;p(&y,y);printf("%d#%d",x,y);}
# include void p(int *x,int y){ ++*x; y=y+2; } void main() { int x=2,y=3; p(&y,y); printf("
# include
void p(int *x,int y){
++*x;
y=y+2;
}
void main()
{
int x=2,y=3;
p(&y,y);
printf("%d#%d",x,y);
}
# include void p(int *x,int y){ ++*x; y=y+2; } void main() { int x=2,y=3; p(&y,y); printf("# includevoid p(int *x,int y){++*x;y=y+2;}void main(){int x=2,y=3;p(&y,y);printf("%d#%d",x,y);}
2#4
p函数的 int *x
得到main中 y的地址
故p函数的 x指向 main的y
p中 *x 和 main的y 占用的是同一段内存,p里 ++*x
就是main的y加1了
p 的y 接收 main的y的值
p的y和main的y是两个不同的内存
p 里 不管 p的y怎么变都不影响 main的y
所以main里x不变还是2 y变为4
# include void p(int *x,int y){ ++*x; y=y+2; } void main() { int x=2,y=3; p(&y,y); printf("# includevoid p(int *x,int y){++*x;y=y+2;}void main(){int x=2,y=3;p(&y,y);printf("%d#%d",x,y);}
# include void p(int *x,int y){ ++*x; y=y+2; } void main() { int x=2,y=3; p(&y,y); printf("
# include
void p(int *x,int y){
++*x;
y=y+2;
}
void main()
{
int x=2,y=3;
p(&y,y);
printf("%d#%d",x,y);
}
# include void p(int *x,int y){ ++*x; y=y+2; } void main() { int x=2,y=3; p(&y,y); printf("# includevoid p(int *x,int y){++*x;y=y+2;}void main(){int x=2,y=3;p(&y,y);printf("%d#%d",x,y);}
2#4
p函数的 int *x
得到main中 y的地址
故p函数的 x指向 main的y
p中 *x 和 main的y 占用的是同一段内存,p里 ++*x
就是main的y加1了
p 的y 接收 main的y的值
p的y和main的y是两个不同的内存
p 里 不管 p的y怎么变都不影响 main的y
所以main里x不变还是2 y变为4