首页学历类考试大学计算机科学
(简答题)

如果在申请动态内存时找不到足够大的内存块,malloc和new将返回NULL指针,宣告内存申请失败。你是怎么处理内存耗尽的?

正确答案

(1)判断指针是否为NULL,如果是则马上用return语句终止本函数。
(2)判断指针是否为NULL,如果是则马上用exit(1)终止整个程序的运行。
(3)为new和malloc设置异常处理函数。例如VisualC++可以用_set_new_hander函数为new设置用户自己定义的异常处理函数,也可以让malloc享用与new相同的异常处理函数。我一般是直接return了。

答案解析

相似试题

  • (简答题)

    关于动态申请内存的问题 请问运行 Test 函数会有什么样的结果?

    答案解析

  • (单选题)

    在内存分配的"最佳适应法"中,空闲块是按()。

    答案解析

  • (简答题)

    编写程序找出内存数据块中的最大数。数据块存放在内存DAT1,数据块长度在单元DAT2字数据中,把找出的最大数放到DAT3中。

    答案解析

  • (单选题)

    在一个大的封闭区域内存在的一个独立的小区域称为()

    答案解析

  • (简答题)

    简述全局内存块的概念,全局内存块有那些使用规则。 

    答案解析

  • (单选题)

    用于整理小块内存映射到虚拟内存以释放物理内存的优化大师组件是()。

    答案解析

  • (单选题)

    多道程序在内存中,如果采用的是交换技术,那么与内存交换的是()。

    答案解析

  • (单选题)

    在VisualFoxPro中,如果希望一个内存变量只限于在本过程中使用,说明这种内存变量的命令是:()

    答案解析

  • (多选题)

    下面哪些情况应该采用动态内存管理?()

    答案解析

快考试在线搜题