题目内容

使用 malloc 函数动态分配内存时,下列说法正确的是( )。

A. 分配的内存空间只能使用一个特定的指针访问
B. 总是能获得一个指向所需内存空间首地址的指针
C. 分配的内存空间不用时系统会自动收回
D. 有可能获得空指针

查看答案
更多问题

下列说法错误的是( )。

A. 系统对使用 malloc 函数动态分配的内存空间自动初始化为 0
B. malloc 函数动态分配的内存空间使用结束后,应使用 free 函数进行内存释放
C. realloc 函数用于改变原来分配的内存空间的大小
D. void 指针可以指向任何类型的变量,是一种通用指针

申请一个 m 行 n 列的整型二维动态数组,可以使用下面的( )语句。

A. p = (int *)malloc(m*n, sizeof(int));
B. p = (int *)calloc(m * n * sizeof(int));
C. p = (int *)malloc(m*n*sizeof(int));
D. int p[m][n];

假设用语句:p = (int *)calloc(m*n, sizeof(int)); 申请了一块动态内存,并用指针变量 p 指向了它,用这块内存保存 m*n 个整型元素,即作为一个二维动态数组来使用,那么 下面通过 p 访问这个二维动态数组第 i 行第 j 列元素的方法,正确的是( )。

A. *(p + i * n + j)
B. p[i][j]
C. p + i * n + j
D. p + i * n

下列程序的输出结果是________。#includeint f(int);int any_function(int (*pf)(int));int main(void){printf("%d\n", any_function(f));return 0;}int f(int i){return i * i + i - 12;}int any_function(int (*pf)(int)){int n = 0;while(pf(n)) ++n;return n;}

答案查题题库