当前位置: 代码迷 >> C语言 >> 关于指针变量赋值(请高手指点)
  详细解决方案

关于指针变量赋值(请高手指点)

热度:47   发布时间:2007-04-07 11:43:01.0
关于指针变量赋值(请高手指点)

指针变量是不能被赋常值的

但用scanf函数就可以赋值,没有出现错误,这是为什么呢。
int main(void)
{
int *pt;
scanf ("%d",pt);
printf("%d\n", pt);
getch();
return 0;
}

搜索更多相关的解决方案: 指针变量  赋值  int  scanf  

----------------解决方案--------------------------------------------------------
P没有指向某一变量,没赋值
----------------解决方案--------------------------------------------------------

有错吧,这样才没错

#include<stdio.h>
int main()
{
int *pt,a;
pt=&a;
scanf("%d",pt);
printf("%d\n",*pt);
return 0;
}


----------------解决方案--------------------------------------------------------

给指针赋值

scanf ("%p",pt);


----------------解决方案--------------------------------------------------------
3楼的朋友..支持
----------------解决方案--------------------------------------------------------
以下是引用游乐园在2007-4-7 12:05:02的发言:

给指针赋值

scanf ("%p",pt);

这样做有什么意义吗
我觉得是没意义的,系统为什么允许这样的赋值呢?
请指教
----------------解决方案--------------------------------------------------------

不用在意不规则的程序,

这里所说的%p 只是c里定义的一种格式,实际中指针的存在是用来访问其指定的数据空间

当你定义了一个变量时,内存分配空间,这时用指针操作才有意义


----------------解决方案--------------------------------------------------------
  相关解决方案