![](https://lstatic.shangxueba.com/sxbzda/h5/images/m_q_title.png)
定义一个指向函数的指针变量p,该函数没有参数并返回一个整型数,其定义形式为:
![](https://lstatic.shangxueba.com/sxbzda/h5/images/tips_org.png)
第1题
a) 一个整型数(An integer)
b) 一个指向整型数的指针(A pointer to an integer)
c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a pointer to an integer)
d) 一个有10个整型数的数组(An array of 10 integers)
e) 一个有10个指针的数组,该指针是指向一个整型数的(An array of 10 pointers to integers)
f) 一个指向有10个整型数数组的指针(A pointer to an array of 10 integers)
g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer
to a function that takes an integer as an argument and returns an integer)
h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数( An array of ten pointers to functions that take an integer argument and return an integer )
第2题
a) 一个整型数(An integer)
b) 一个指向整型数的指针(A pointer to an integer)
c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a
pointer to an integer)
d) 一个有10个整型数的数组(An array of 10 integers)
e) 一个有 10 个指针的数组,该指针是指向一个整型数的(An array of 10
pointers to integers)
f) 一个指向有10个整型数数组的指针(A pointer to an array of 10 integers)
g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer
to a function that takes an integer as an argument and returns an integer)
h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返
回一个整型数( An array of ten pointers to functions that take an integer
argument and return an integer )
第6题
A.p是一个函数名,q是一个指针变量
B.p是一个指向整型变量的指针变量,q是一个指向一维数组的指针变量
C.p和q是等价的,都是指针变量
D.p是指向函数的指针变量,函数的返回值是整型数据;q是带回指针值的函数
第7题
A.int( *p)[n); 是把p定义为整型变量,它指向不知数据类型的一维数组
B.int( *p)(); 是把p定义为整型指针
C.int *p[n); 定义指针数组p,每个指针指向一个整型变量
D.int *p(); p为指向函数的指针,函数返回值为整型
第8题
阅读以下说明、C程序代码和问题1至问题3,将解答写在答题纸的对应栏内。
【说明1】
设在某C系统中为每个字符型数据分配1个字节,为每个整型(int)数据分配4个字节,为每个指针分配4个字节,sizeof(x)用于计算为x分配的字节数。
【C代码】
#include <stdio.h>
#include <string.h>
int main()
{ int arr[5]={10,20,30};
char mystr[]="JustAtest\n";
char *ptr= mystr;
printf("%d%d%d\n", sizeof(int),sizeof(unsigned int),sizeof(arr));
printf("%d%d\n",sizeof(char),sizeof(mystr));
printf("%d%d%d\n",sizeof(ptr),sizeof(*ptr),strlen(ptr));
return 0;
}
【问题1】(8分)
请写出以上C代码的运行结果。
【说明2】
const是C语言的一个关键字,可以用来定义“只读”型变量。
【问题2】(4分)
(1)请定义一个“只读”型的整型常量size,并将其值初始化为10;
(2)请定义一个指向整型变量a的指针ptr,使得ptr的值不能修改,而ptr所指向的目标变量的值可以修改(即可以通过ptr间接修改整型变量a的值)。
注:无需给出整型变量a的定义。
【问题3】(3分)
某C程序文件中定义的函数f如下所示,请简要说明其中static的作用,以及形参表“const int arr[]”中const的作用。
static int f(const int arr[])
{
/*函数体内的语句省略*/
}
第9题
A、在一个结构体内不能包含另一个不同类型的结构体作为其成员。
B、用结构体变量做函数参数,是将结构体变量的所有成员的内容传给被调函数,因此在被调函数中对结构体内容的修改不影响原结构体变量。
C、结构体在内存中所占的字节数不仅与所定义的结构体类型有关,还与计算机系统本身有关。
D、和整型、实型、字符型一样,枚举类型也是一种基本数据类型。
E、用指向结构体变量的指针做函数参数,是将结构体变量的地址传给被调函数,因此在被调函数中对结构体内容的修改会影响原结构体变量。
第10题
参数并返回一个整型数(A pointer to a function that
takes an integer as an argument and returns an
integer)
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!