以下叙述中正确的是()
A.指针变量只能通过求地址运算符(&)来获得地址值
B.语句p=NULL;与p=\0;是等价的语句
C.int*pl;int**p2;int*p3;都是合法的定义指针变量的语句
D.语句p=NULL;执行后,指针P指向地址为0的存储单元
A.指针变量只能通过求地址运算符(&)来获得地址值
B.语句p=NULL;与p=\0;是等价的语句
C.int*pl;int**p2;int*p3;都是合法的定义指针变量的语句
D.语句p=NULL;执行后,指针P指向地址为0的存储单元
第1题
以下叙述中错误的是
A.函数的返回值类型不能是结构体类型,只能是简单类型
B.只要类型相同,结构体变量之间可以整体赋值
C.可以通过指针变量来访问结构体变量的任何成员
D.函数可以返回指向结构体变量的指针
第2题
若有定义语句:doublea,*p=&a;以下叙述中错误的是
A.定义语句中的*号是一个说明符
B.定义语句中的P只能存放double类型变量的地址
C.定义语句中*p=&a把变量a的地址作为初值赋给指针变量P
D.定义语句中的,*号是一个间址运算符
第3题
以下叙述中正确的是
A.如果P是指针变量,则*p表示变量p的地址值
B.如果p是指针变量,则&p是不合法的表达式
C.在对指针进行加、减算*运算时,数字1表示1个存储单元的长度
D.如果P是指针变量,则*p+l和*(p+1)的效果是一样的
第4题
以下叙述中正确的是
A.函数的类型不能是指针类型
B.函数的形参类型不能是指针类型
C.基类型不同的指针变量可以相互混用
D.设有指针变量为double*p,则p+1将指针P移动8个字节
第5题
若有定义int * p[3]:,则以下叙述中正确的是 ______。
A.定义了一个基类型为int的指针变量p,该变量有三个指针
B.定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针
C.定义了一个名为*p的整型数组,该数组含有三个int类型元素
D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素
第6题
以下叙述中错误的是
A.函数可以返回地址值
B.改变函数形参的值,不会改变对应实参的值
C.当在程序的开头包含头文件stdio.h时,可以给指针变量赋NULL
D.可以给指针变量赋一个整数作为地址值
第7题
以下叙述中正确的是
A.结构体变量的地址不能作为实参传给函数
B.结构体数组名不能作为实参传给函数
C.即使是同类型的结构体变量,也不能进行整体赋值
D.结构体中可以含有指向本结构体的指针成员
第8题
以下叙述中正确的是
A.结构体类型中的各个成分均不能是数组或指针
B.结构体类型的变量,不能在声明结构体类型组成时一起定义
C.使用typedef定义新类型名后,新类型名与原类型名实际上是等价的
D.元素为结构体类型的数组,只能在声明过结构体类型之后,单独进行定义
第9题
以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是 main() { int*p,*q,a,b; p=&a; printf("input a:"); scanf("%d",*p);}
A.*p表示的是指针变量p的地址
B.*p表示的是变量a的值,而不是变量a的地址
C.*p表示的是指针变量p的值
D.*p只能用来说明p是一个指针变量
第10题
以下叙述中正确的是
A.函数的返回值不能是结构体类型
B.函数的返回值不能是结构体指针类型
C.在调用函数时,可以将结构体变量作为实参传给函数
D.结构体数组不能作为参数传给函数