设有定义:int a,b[10],*c=NULL,*p;,则以下语句错误的是

admin2019-06-27  8

问题 设有定义:int a,b[10],*c=NULL,*p;,则以下语句错误的是

选项 A、p=a;
B、p=b;
C、p=c;
D、p=&b[0];

答案A

解析 一个变量的地址是一个值,可以把这个地址值存放到另一个变量里保存。这种专门用来存放变量地址的变量,称为"指针变量"。所以对指针变量赋值,值必须是地址值。a为整型变量不是地址值,不能赋值给指针变量,A选项语句错误。数组名为数组首地址,所以b为地址可以赋值给指针变量,B选项语句正确。c为指针,初始化为NULL,与p均为整型指针,可以将其赋值给p,C选项语句正确。&为取地址运算符,&b[0]为数组元素b[0]的地址,可以赋值给指针变量,D选项语句正确。故选择A选项。
转载请注明原文地址:https://kaotiyun.com/show/caID777K
0

最新回复(0)