题目内容

下列关于内存泄漏问题的描述,错误的是( )。

A. 需长期稳定运行的服务程序,需要频繁对内存操作且消耗空间较大的程序,通常 对内存泄漏比较敏感
B. 出现内存泄露并不是一定会导致系统发生异常,因为实际中内存耗尽的情况非常 罕见。内存泄露问题的严重程度取决于每次函数调用时遗留内存垃圾的多少和函数 被调用的次数
C. 指针变量所占的内存被释放了,也就意味着它所指向的动态内存也会被自动释放
D. 内存泄漏问题通常需要运行相当一段时间后才能发现

查看答案
更多问题

使用 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

答案查题题库