C语言简单的指针

来源:百度知道 编辑:UC知道 时间:2024/05/21 11:38:06
main()
{int x=1,y=2;
int *p;
ip=&x;
y=*ip;
printf("%d",y);}
请问可不可以把ip=&x换成*ip=&x(为什么)

当然不行。ip中存放的是x的地址。ip=&x就是把x的地址赋给指针ip。在声明该指针时可以写成int *ip=&x(这里的*是说明ip为指针类型,而不是取地址。)

能的,但必须在指针定义时那样写
即int *ip=&x;
具体可以参看指针定义中几种等价的方法。
main()
{int x=1,y=2;
int *ip=&x;
y=*ip;
printf("%d",y);
getch( );
}

首先你的定义错误,int *p; 应该是int *ip;
不可以,因为IP是地址,而&x是取x的地址,*是取指定地址的数据
不可以将一个地址赋给一个数据

不行。左边是个变量,而右边则是个指针(地址).

不可以,因为*ip是一个整型数据,而&x是地址。