dynamic-memory-allocation

    1熱度

    1回答

    可以在堆棧或堆中靜態分配一塊內存。我想知道一種方法來檢測指針是否指向堆。我使用Windows和Linux,對於每個操作系統,這不是一個不同的解決方案。我使用GCC和Mingw。 如果我能知道堆的開始和結束位置,我認爲問題可以解決。我認爲我可以檢測堆棧的底部和頂部,以便知道塊是否在堆棧中,但是如果存在多個線程,那麼存在多個堆棧。即使我可以知道靜態內存在哪裏,我想我會遇到共享庫的靜態內存塊問題。 我想

    0熱度

    1回答

    嘗試查找特定偏移量對應的目標文件的代碼時,我有點困惑。偏移量爲0xB71B13E8 使用proc/<PID>/maps,我發現目標進程的libX11 lib的文本代碼已映射到0xB70CC000-0xB71B7000區域。 我現在想用objdump在X11 lib /usr/lib/libX11.so.6.2.0的目標文件上找到這個偏移量。 我應該看看0xB71B7000 - 0xB71B13E8

    0熱度

    2回答

    我正在修改PKTGEN以發送包含斐波那契數列序列的數據包。這是我第一次進行內核開發,所以我不太熟悉內存分配的可用函數。我也不是C大師:) 我將算法的迭代步驟存儲在一個數組中,如果有人要求一個偉大的Fibonacci n參數,我希望是動態的。 Realloc不可用。你知道一種動態擴大數組大小的方法嗎? 謝謝

    0熱度

    1回答

    我有下一個動作。 - (IBAction)openThumbMap:(UIButton *) sender { ThumbmapViewController *viewController = [[ThumbmapViewController alloc] initWithInfo:mainPages]; viewController.title = self.title;

    4熱度

    5回答

    我有一個2d整型數組用於瓷磚地圖。 地圖的大小未知,並在運行時從文件讀入。目前最大的文件是2500件(50x50格)。 我有一個動態內存分配的工作方法從一個早期的問題,但人們不斷說這是一個壞主意,所以我一直在考慮是否只使用一個大數組,並沒有填補所有使用較小地圖。 人們是否知道任何解決方案的優缺點?任何建議或個人意見的歡迎。 C++ BTW 編輯:所有的地圖都是由我做,所以我可以選擇一個最大尺寸。

    0熱度

    2回答

    有沒有什麼辦法如何malloc() C中的二維矩陣?我已成功嘗試malloc() 1D字段,但在矩陣中,我收到錯誤。

    2熱度

    2回答

    我試圖找到一個C++的內存管理庫,它將從預分配的內存塊中分配給我,以便初始化它。完成後,我將關閉分配器(和對象)並釋放預分配的塊 做這樣的事情已經存在了嗎?

    0熱度

    3回答

    在我的應用程序中,有一些情況是相對較小的對象(最多50個字節),例如用於記錄目的的消息類必須在程序執行期間頻繁地創建和釋放(通過GC)。所以我擔心動態分配這些對象的開銷。如question所述,有一些可用的快速內存分配器用於本地代碼。 .Net中是否存在快速內存分配的概念,或者.Net中是否需要快速內存分配?如果沒有什麼可以用來加速這種實施? (也許某種預先分配的對象池。)我應該擔心開銷嗎?

    4熱度

    1回答

    #include <iostream> #include <vector> #include <cstdlib> #include <cassert> struct s_A { bool bin; s_A(): bin(0) {} }; class c_A { public: s_A * p_struct; c_A(): p_struct

    4熱度

    2回答

    我已經爲Postscript虛擬機寫了一個簡單的垃圾回收器,而且我很難設計一套適合何時執行集合的規則(當空閒列表太短時?)以及何時分配新空間(當有很多空間可用時)? 到目前爲止,我已經寫了自下而上的,但這個問題涉及頂層設計。所以我覺得我不穩固。 所有對象的管理和存取只有通過操作員功能,所以這是一個集電極在 C,不爲 C. 主分配器函數被調用gballoc: unsigned gballoc(mfi