0
A
回答
2
術語「內存分配器」在定義C語言的標準中沒有任何含義。然而,他們確實定義了一套C運行時間庫必須提供的「內存管理函數」,所以我認爲這是你所問的這些函數。
這些標準還沒有定義,其中甚至如何記憶是從,只是功能malloc
,calloc
,realloc
和free
必須存在並有指定的語義分配。所以,由實現決定從哪裏分配內存。
術語「未初始化的數據段」通常是指已編譯的可執行文件的一部分,它指定加載程序應爲程序保留一定量的內存以供使用。在所有我知道的實現(或者至少那些「未初始化的數據段」這個術語具有含義的實現)中,該部分用於未初始化的靜態變量。
在大多數實現中,C運行時將通過調用操作系統內核來形成堆,以獲得內存塊,然後將其分配給程序。
對於Linux here中的進程內存佈局有很好的描述。
相關問題
- 1. JOSSO可以滿足這個要求嗎?
- 2. 未初始化值由堆棧分配
- 3. Valgrind無法找到未初始化數據的堆棧分配
- 4. LAMP會滿足以下需求嗎?
- 5. TeamCity - 未滿足要求(DotNetFramework4.0_x86)
- 6. std :: vector是否滿足Boost.Interprocess分配器的容器需求?
- 7. 使用promise以ajax請求初始化服務數據?
- 8. 混淆瞭如何使用JAXB XML適配器來滿足我的要求
- 9. 分配未初始化片
- 10. 如果不滿足要求,重定向
- 11. 未初始化的數據段
- 12. 未初始化的值是由堆分配創建的,如果我不做memset
- 13. Android平臺,我可以滿足這些要求嗎?
- 14. TeamCity未滿足的要求:MSBuildTools14.0_x86_Path存在
- 15. 我應該如何使用服務器來滿足以下要求?
- 16. 你可以使用localStorage中的值來初始化Html.TextBoxFor嗎?
- 17. 416請求的範圍不可滿足
- 18. nm的未初始化數據部分
- 19. 默認初始化器需要不需要可變的特性
- 20. 未初始化的值是由堆棧分配創建的
- 21. 未初始化的值是由堆分配創建的:Unordered_map
- 22. 我可以使用target =「」以某種方式 - 或者我必須使用javascript來滿足這個要求嗎?
- 23. $請求在AuthenticatesUsers.php中未初始化Laravel5
- 24. 我需要在GAS中初始化堆棧嗎?
- 25. 基於滿足要求的Excel分類
- 26. 初始化時內存將分配給「未初始化的靜態變量」嗎?
- 27. 可以使用動態分配的內存初始化引用成員嗎?
- 28. 未初始化的值是由堆分配
- 29. Valgrind的:未初始化值是由堆分配
- 30. 未能滿足項目要求
首先你必須告訴我們C中的分配器是什麼。 – DeiDei
內存分配器 – YINGYING
也許我應該說堆分配器? – YINGYING