如果 [ "int* ptr" ] PTR 是指针,"int a=5"与 scanf( "%d" ,ptr) 的关系是什么?



代码

int *ptr;
int a=10;
scanf("%d",ptr);
printf("%d",*ptr);
output:-
5 //for scanf
5 //from printf

但是

int *ptr;
// removing this `int a=10;`
scanf("%d",ptr);
printf("%d",*ptr);
output change :-
5 //for scanf
//blank (nothing from printf)

在这里,我试图直接扫描指针的值那么我如何将值扫描到ptr

int a,*ptr;
ptr = &a;

在中放入(scanf)值之前,是否必须将另一个变量的地址分配给ptr

您的问题的答案是"是的;在将指针用于几乎任何事情(而不仅仅是存储指针位置)之前,有必要将指针分配给某个对象。将指针指向您使用scanf()的变量;没有";似乎正是你所需要的。

相关内容

  • 没有找到相关文章

最新更新