羊祜故里:求救指针的定义对还是不对

来源:百度文库 编辑:高校问答 时间:2024/05/10 11:53:43
int *p;
scanf("%d",p);
是不对错????????????

必然不对,因为你的整型指针p还没有分配资源,所以p是野指针,就是不知道指向那里的指针。这是非常容易出的错误。
应该是:
int *p;
p=malloc(sizeof(int));为p指针分配资源
scanf("%d",p);
别忘了用完了之后释放资源。
free(p);
上边是c版本,也可以用c++实现
int *p;
p=new(int);
scanf("%d",p);
释放
delete(p);

对,但要赋值
int *p;
p = NULL;
scanf("%d",p);

int *p;
scanf("%d",&p);
指针要分内存还要释放

int *p;
p=new int;
scanf("%d",p);

我认为不对。
没赋值 怎么就可以呢。

不对,较简单的解决:
int *p,a;
*p=a;
scanf("%d",*p);或scanf("%d",a);