设有说明int(*ptr)[M];其中ptr是()。

题目
设有说明int(*ptr)[M];其中ptr是()。

A.M个指向整型变量的指针

B.指向M个整型变量的函数指针

C.一个指向具有M个整型元素的一维数组的指针

D.具有M个指针元素的一维指针数组,每个元素都只能指向整型量

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列程序的输出结果是______。includeusing namespace std;int main() {char a []="He

下列程序的输出结果是______。 #include<iostream> using namespace std; int main() { char a []="Hello, World"; char *ptr=a; while (* ptr) { if(*ptr)= 'a'&& *ptr' <= 'z') cout << char(*ptr+'A'-'a'); else cout << *ptr; ptr++; } return 0; }

A.HELLO,WORLD

B.Hello,World

C.hELLO, wORLD

D.hello,world


正确答案:A
解析:对于str的每个字母,如果是大写字母或者是非字母,就直接打印出来。如果是小写字母,就转化成大写字母,然后打印。‘A’-‘a’正是大小写字母的ASCII码之差。

第2题:

设有如下定义,则以下叙述中正确的是______。 int(*ptr)();

A.ptr是指向一维数组的指针变量

B.ptr是指向int型数据的指针变量

C.ptr是指向函数的指针,该函数返回一个int型数据

D.ptr是一个函数名,该函数的返回值是指向int型数据的指针


正确答案:C
解析:“int(*ptr)();”说明ptr是一个指向函数的指针,返回值是整型。*ptr两边的括号非常关键,表示*和ptr组合成一个指针变量,然后再和后边的圃括号结合,表示该指针变量*ptr是一个指向函数的指针变量。如果没有*ptr两边的括号,“int*ptr();”表示ptr是个函数,该函数返回指向整型数据的指针。

第3题:

若有以下语句,则对x数组元素引用不正确的是( )。 int x[ ]={1, 2, 3, 4, 5,6}, *ptr;ptr=x;

A.*(--ptr)

B.*(ptr--)

C.*(ptr++)

D.*(++ptr)


参考答案A

第4题:

下面函数的功能是______。 exchange(int*ptr1,*ptr2) { int*ptr; ptr=-ptr1; ptr1=ptr2; ptr2=ptr; }

A.交换*ptr1和*ptr2的值

B.无法改变*ptr1和*ptr2的值

C.可能造成系统故障,因为使用了空指针

D.交换*ptr1和*pb2的地址


正确答案:B
解析:函数中将指针变量ptr1和ptr2中的值交换,而不是交换指针ptr1和ptr2所指变量中的值。

第5题:

下列有关指针的用法中错误的是( )。

A.int i;int *ptr=&i;

B.inti;int *ptr;i=*ptr;

C.int *ptr;ptr=0;

D.int i=5;int *ptr;*ptr&i;


正确答案:B

第6题:

语句int(*ptr)();的含义是

A.ptr是指向一个维数组的指针变量

B.ptr是指向int型数据的指针变量

C.ptr是指向函数的指针,该函数返回一个int型数据

D.ptr是一个函数名,该函数的返回值是指向int型数据的指针


正确答案:C
解析:本题考查的是函数指针的定义。定义一个函数指针的形式为:类型标识符(*指针变量名)()。函数指针的值等于函数的入口地址,通过这个指针变量能够调用它所指向的函数。

第7题:

已有定义“int k=2;int*ptr1, *ptr2;”,且ptr1和ptr2均已指向变量k,下面不能正确执行的语句是______。

A.k=*ptr1+*ptr2;

B.ptr2=k;

C.ptr1=ptr2;

D.K=*ptr1*(*ptr2);


正确答案:B

第8题:

设有如下定义:

int(*ptr);

则以下叙述中正确的是( )。

A.ptr是指向一维组数的指针变量

B.ptr是指向int型数据的指针变量

C.ptr是指向函数的指针,该函数返回一个int型数据

D.ptr是一个函数名,该函数的返回值是指int型数据的指针


正确答案:C
本题中int(*ptr)的含义是指向函数的指针变量,其为指向函数的指针变量,该函数返回一个int型数据,故选择C选项。

第9题:

(C语言)假设有如下定义方式int(**ptr)();,则以下叙述中正确的是

A、ptr是指向一维数组的指针变量

B、ptr是指向int型数据的指针变量

C、ptr是指向函数的指针的指针,该函数返回一个int型数据 我是应届生

D、ptr是一个函数名,该函数的返回值是指向int型数据的指针


正确答案:
 

第10题:

设有如下定义: int arr[]={6,7,8,9,10); int*ptr: ptr=arr; *(ptr2)=2; printf("%d,%d\n",*ptr,*(ptr2)): 则下列程序段的输出结果为( )。

A.8,10

B.6,8

C.7,9

D.6,2


正确答案:D
程序中ptr指针指向数组art的首地址,*ptr=arr[0]=6,*(ptr2)=2,故选D。

更多相关问题