Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么是;“内存分配”;实际上是指C_C_Memory_Allocation - Fatal编程技术网

什么是;“内存分配”;实际上是指C

什么是;“内存分配”;实际上是指C,c,memory,allocation,C,Memory,Allocation,我最近在一次采访中,我收到一张带有几个函数签名的纸,要求我填写代码,我也被指示不要“分配内存” 这个问题相对简单(列表中最小的值),所以我递归地解决了它,面试官似乎对此不感兴趣,他们似乎建议我可以在堆栈上声明变量,但我很紧张,遗憾的是,没有向面试官施加压力 在C中“分配”内存意味着什么 分配内存意味着为程序保留堆部分中的内存量。相反,当不分配内存时,新变量存储在堆栈部分 请看没有所谓的c/c++(应该是任何面试的一部分)坦率地说,你的问题非常模糊。为什么不展示一下代码,然后我们就可以告诉你分配在

我最近在一次采访中,我收到一张带有几个函数签名的纸,要求我填写代码,我也被指示不要“分配内存”

这个问题相对简单(列表中最小的值),所以我递归地解决了它,面试官似乎对此不感兴趣,他们似乎建议我可以在堆栈上声明变量,但我很紧张,遗憾的是,没有向面试官施加压力


在C中“分配”内存意味着什么

分配内存意味着为程序保留堆部分中的内存量。相反,当不分配内存时,新变量存储在堆栈部分


请看

没有所谓的c/c++(应该是任何面试的一部分)坦率地说,你的问题非常模糊。为什么不展示一下代码,然后我们就可以告诉你分配在哪里,以及如何避免——你本可以把它推回——堆栈上的变量被分配了。它们在堆栈上分配。如果面试官说错话,你可以让他们坚持下去,或者让他们纠正他们的要求。问题应该更清楚。如果无法分配内存,则根本无法运行程序。我猜他们的意思是“没有malloc/calloc/realloc/free”,但嘿,只是一个猜测:)除了没有malloc/calloc之外,我想他们也没有VLA的意思。最后,我认为该要求最好表述为“您的内存使用量应为O(1)”,即独立于输入大小。