首页 > 试题广场 >

有以下变量说明,下面不正确的赋值语句是( )。 in

[单选题]
有以下变量说明,下面不正确的赋值语句是()
int a=5, b=10, c; 
int* p1 = &a;
int* p2 = &b; 

  • p2 = &a;
  • p1 = a;
  • p2 = p1;
  • p1 = &b;
编译器给的答案是 b int  不能赋值给int*
发表于 2019-01-16 13:04:44 回复(0)
 int* p1和int *p1没有区别,都是表示P1是一个整数型指针,P1指针指向a所在地址,
P2指向b所在地址,所以将值赋给指针时,要么在值前面加地址符,即p1或p2=&a;
要么对指针进行解引,即*p1或*p2=a。

编辑于 2018-06-21 16:30:39 回复(2)
p1类型为int* 不能将"int"类型的值分配到"int *"类型的实体,可对指针进行解引*p1=a;
发表于 2019-06-19 10:15:39 回复(0)
整形赋值给指针时,需要显示的强制转换
发表于 2018-05-24 08:49:11 回复(0)
题目有问题,p1,p2应该改成int *p1和int *p2
发表于 2018-05-14 23:41:23 回复(1)
p1,p2都是指针,可以指向地址,同类型可以赋值,而a,b, c都是int类型,不是指针也不是地址,只是int类型的整形
发表于 2023-08-26 14:32:36 回复(0)
指针不能和指向的值相同
发表于 2020-09-23 00:29:47 回复(0)
不懂
发表于 2018-05-14 21:06:32 回复(0)