realloc

    0熱度

    1回答

    int i = 0; player_t** matchArray = malloc(sizeof(player_t**)); player_t *currentPlayer = playerList; while(currentPlayer != NULL) { if(strcmp(currentPlayer->nameLast, name) == 0) {

    0熱度

    1回答

    我想我知道但我不想讓我的工作不正確。 你看到的是大部分的例子... char* temp; char* temp1; temp = malloc(10, sizeof(char); temp1 = realloc(temp, 11*sizeof(char)); 現在我假設你不使用... temp = realloc(temp, 11*sizeof(char)); 因爲如果沒有足夠的

    0熱度

    1回答

    以下是兩個函數,其中第一個函數試圖根據計數值爲指針數組分配內存並隨後重新分配內存。 第二個函數試圖將最後一個字符串向前連接到指針數組中的第一個字符串。 程序需要將字符串和模式的數量作爲命令行參數進行匹配,並僅在輸入字符串中找到匹配模式時調用第一個函數。 20 char **allocate_array_of_ptrs(char **str_array, /* pointer to the arra

    1熱度

    3回答

    基本上,我試圖將一堆char輸入轉換爲int,並將它們分配給一個動態int數組。字符串輸入和標記化似乎工作正常。這個問題(從我可以告訴的)似乎是重新分配int數組; 數組重新分配兩次後,指向int數組的指針返回NULL。 我試圖做的是每當令牌的數量達到或超過(大小除以sizeof(int))時,int數組的大小加倍。每當滿足這個條件時,realloc語句就起作用。 我認爲使用指針指針是最終的解決方

    3熱度

    4回答

    如果我嘗試使用realloc爲指針分配的內存少於最初分配的內存,冗餘內存是否會釋放或重新分配會導致內存泄漏? 我不知道我怎麼可以測試這個,sizeof似乎返回相同的值,而不管我做多少次重新分配。

    4熱度

    1回答

    目前我已經建立了一個數組來保存程序創建的50個數據包。不過,我想改變這個數組來使用malloc,而不是像當前數組那樣存儲最多50條信息。 這裏是用來下設INT主要 struct packet create[50]; int countpackets = 0; 使用的陣列當前代碼和數組的代碼中的另一個函數中增加爲使 int add(struct packet *create, int coun

    0熱度

    2回答

    我有一個任務,我必須接受來自用戶的輸入。我不能使用鏈表,所以我的計劃是: Alloc一些內存。 如果我們需要的realloc,這意味着我達到了分配的小區數量: 嘗試realloc的。如果成功,那很好。 如果我們不能重新分配,打印輸入,空閒內存和realloc然後。 我真的不能決定有關,告訴我我怎麼達到的分配內存的結束,這就是爲什麼我需要你的幫助的命令。我寫道: if (i==(MAX_CHARS_

    1熱度

    1回答

    我試圖重新分配結構abcd_S但是編譯器的數組給我 *** glibc detected *** realloc(): invalid next size: 0x0000000000603010 *** 我想,這樣有重新分配數組重新分配後沒有空的字段。 而且,當你覺得我應該返回或退出程序? typedef struct abcd { char *first_field; c

    0熱度

    2回答

    你好我在大學的一次練習中需要用這種方法給malloc一個數組。星星陣列有1個插槽。如果輸入不止一個,那麼數組會翻倍。如果輸入超過2,那麼它會再次翻倍等等。之後,我必須裁剪陣列以適合輸入的數量。例如,如果我有5個輸入,那麼陣列將有8個插槽,我必須讓它有5個插槽,我不知道如何。這是我到目前爲止的代碼: nameInfoT* ReadNames(int* size){ nameInfoT* n

    0熱度

    2回答

    下面顯示的是用C語言編寫的代碼,用於在函數中重新分配內存。我想知道爲什麼這會在執行過程中崩潰,也是一個有效的方法。 int main() { int *kn_row, *kn_col, *uk_row, *uk_col; double *kn_val, *uk_val; kn_row=NULL, kn_col=NULL, kn_val=NULL, uk