#include<stdio.h>
#include<stdlib.h>
void Decuple(int *i);
int main(void)
{
int *p = malloc(4);
*p = 10;
Decuple(p);
printf("*p = %d\n", *p);
return 0;
}
void Decuple(int *i)
{
*i = (*i) * 10;
return ;
}
当调用Decuple函数时,是把指针变量p中的地址传递给指针变量i,此时 i 和 p指向的是同一个内存单元,所以操作 i 所指向的内存空间就是操作 p 所指向的内存空间。