malloc

    1熱度

    3回答

    所以我有一個文件,作爲一些文本,我希望我的函數讀取該文件並將其存儲在一個數組上。我做了一些代碼,當我打印我的動態數組時,它會打印垃圾值:<幫助。 char* read_message(char *filename) { //gets the PATH of the txt file char *file_contents; long input_file_size;

    1熱度

    1回答

    在運行時我得到調試斷言失敗。 in dbgheap.c line 1322 expression _crtIsValidHeapPointer(pUserData) 如果我在一個調試器中運行,我會得到如下所示的一行觸發的斷點。 我該如何解決這個分配/解除分配錯誤? 我有在頭文件2層的功能: struct union_find_t; struct union_find_t* union_fi

    0熱度

    1回答

    這是我的程序的簡化版本,我的程序旨在從高度圖創建隨機地形。這是我如何創建高度圖。 我已經通過gdb運行它,但是當我通過gdb運行它時,它從來沒有seg故障。當我正常運行它但它segfaults。我不知道爲什麼,不應該這樣工作。有沒有一種工具可以用來可視化我的程序的內存使用情況? 我想模糊有權訪問像素值的矩陣。矩陣逐列索引。 #include <stdio.h> #include <stdlib.

    1熱度

    2回答

    目前我在下面有下面的代碼。 char **arr最初設置爲NULL。然後在從文件讀取時以文字形式存儲。我只是隨機選擇了一個像5000這樣的大數字,因爲我不知道如何正確地做malloc業務,即使在網上查找並嘗試學習之後。 而且,當我嘗試freechar **arr(我的代碼的最後一節),有時我得到segmentation faults,有時abort traps等。如果有人可以告訴我怎麼做這樣的事情

    2熱度

    1回答

    everyone: 我剛剛遇到了一種在C中分配二維矩陣的方法。在練​​習時,我對一個未知的bug感到困惑。 這裏是函數,第一個版本: //first version static int ** my2DAlloc(int rows, int cols){ int ** array; int * array_head; int i; int len = si

    0熱度

    1回答

    我正在嘗試爲用戶輸入重新創建一個簡單的字符串分析器。我可以在沒有問題的情況下獲得輸入字符串,並確定其中包含多少個單獨的字符串,以便將正確的大小正確地賦予malloc。最初,我沒有找到stdin中的字符串數量,只是重新分配我的字符串數組,以允許空間再多一個字符串,然後malloc新的字符串。現在我有尺寸,我相信這是沒有必要的,因爲我可以提供適當大小的malloc。 我是什麼混淆,是當我在我的代碼留下

    0熱度

    2回答

    我希望程序在malloc()期間收到信號後,將堆棧內容寫入文件。爲此,我嘗試使用backtrace()和backtrace_symbols_fd()函數,但後來發現它們不是異步信號安全的。我編寫了下面的代碼來測試,看起來該程序在大多數運行中都掛起了。 #include <execinfo.h> #include <string.h> #include <sys/types.h> #inclu

    0熱度

    1回答

    我試圖做一個程序,對於給定的int value保持分隔量的數組: int amount_of_dividers和那些分隔的列表:int* dividers 這是代碼: #include <stdio.h> #include <stdlib.h> typedef struct{ int value; int amount; int* dividers; } Di

    -1熱度

    2回答

    我一直對這個尾巴方案下一陣尾巴程序,但我似乎遇到了與我的DO循環一個惱人的問題。編譯並運行我的代碼後,它似乎只執行Do-Loop中的第一次迭代並崩潰。我多次鑽研邏輯,我不知道什麼是錯的。我對編程也很新,任何建議都會有幫助! /** *Author: William Briggs *Date : 11/2/2017 * *A Basic implementat

    0熱度

    1回答

    我在嘗試弄清楚如何爲這個結構分配和釋放內存時遇到了一些麻煩。 我需要使用它來創建FiniteTable在牛頓插值中使用。 typedef struct{ unsigned int empty; float value; }FiniteTableValue; 第一種是一種具有真正價值的節點。 typedef struct{ FiniteTableValue *co