【发布时间】:2013-08-05 20:50:09
【问题描述】:
面试问问题:
while(1)
{
void * a = malloc(1024*1024);
}
此循环将在 2 gb ram 和 8 gb ram 上运行多少次?
我说无限循环是因为即使内存已满,也没有终止条件。 他不同意。我现在不知道。请帮忙。
【问题讨论】:
-
@Nobilis 如果内存已满,
malloc()返回NULL。 -
为什么要投反对票???
-
好问题在 win 7 系统的 Visual Studio 上运行,它几乎让我的系统崩溃。我的电脑死机了 5 分钟,我不得不硬关机并重新启动才能回到这里 :)。
-
这是一个非常迟钝的面试问题。它只看你是否是某种巫师。没有人会创建这样的循环。我希望这份工作本身实际上与此相关。坚持相关问题更有意义。
-
@H2CO3:在英格兰南部,我希望听到 null 与 full 的发音完全不同;在英格兰北部,我可以相信 null 可以像 full 发音(尽管我没有听说过这样的发音)。 Mac 上的(英国)字典指定 'null |nʌl|'和'full |fʊl|',其中两者发音中的元音标记完全不同。 (美国)字典再次不同:'null |nəl|'与“完整的|fo͝ol|”相比但是这些词在美国和英语中的发音明显不同。