#include<stdio.h>
int q = 10;
void fun(int *p){
*p = 15;
p = &q;
printf("%d ",*p);
}
int main(){
int r = 20;
int *p = &r;
fun(p);
printf("%d", *p);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我正在玩指针.无法理解这个的输出.输出为10 15.一旦p指向q的地址,为什么在返回main函数时它的值会发生变化?也是为什么它改为在'10'之前的函数中赋值给它的值'15'.
| 归档时间: |
|
| 查看次数: |
265 次 |
| 最近记录: |