以下是引用q215236213在2012-7-31 15:08:51的发言:
多谢多谢啊,原来是这个原因!又懂了一点,,现在修改了之后就木有问题了
#include
#include
void f(int ** q)
{
int i = 8 ;
// *q = &i ;
**q = i ;
}
int main(void)
{
int * p ;
p = (int *)malloc(sizeof(int));
*p = 3 ;
f(&p);
printf("*p = %d\n", *p);
free(p);
return 0;
}
多谢多谢啊,原来是这个原因!又懂了一点,,现在修改了之后就木有问题了
#include
#include
void f(int ** q)
{
int i = 8 ;
// *q = &i ;
**q = i ;
}
int main(void)
{
int * p ;
p = (int *)malloc(sizeof(int));
*p = 3 ;
f(&p);
printf("*p = %d\n", *p);
free(p);
return 0;
}
你获得了p指针,直接把它扔给函数f(p)在里面*p=8不就了事了么,弄那么多*号很漂亮吗?
授人以渔,不授人以鱼。