calloc

    1熱度

    1回答

    我使用NSOperationQueue來管理iOS應用程序的一個階段,這個階段很長,所以我想要異步管理它。在這個階段,我通過直接使用calloc函數在C中分配大數組。 隨着大我的意思是一個1024x256二維浮點數組和類似的東西。 如果一切都駐留在主線程上,而不是在應用程序鎖定時計算,但一切正常,如果我將大部分移動到NSInvocationOperation,那麼我得到了很多奇怪的結果,有時候調試

    0熱度

    2回答

    我正在嘗試完成C中稀疏矩陣的賦值。我有一個稀疏矩陣作爲值和座標列表保存,並將其轉換爲耶魯格式。 我遇到了一個似乎沒有人見過的奇怪的內存分配問題。我的代碼是: yale* convertMatrix(matrix_list* input){ int matrix_elements = input->elements; int matrix_rows = input->m; yale* yal

    3熱度

    4回答

    我的程序中有一個小的內存訪問問題,我沒有找到錯誤,也許有人可以幫助我。 我創建了一個新類型來存儲rgb顏色值。 這種類型的樣子: typedef struct pixel { unsigned char r; unsigned char g; unsigned char b; } pixel; 在我的主程序我用calloc創建二維數組動態,存儲紅色信息的。 pi

    0熱度

    4回答

    這裏是我的代碼: #include <stdio.h> #include <stdlib.h> int main(){ int n=10; char *s= calloc(2,sizeof(char)); sprintf(s,"%d",n); printf(s); return 0; } 目的是assing 2位數的(字符*)。 當我運行代碼時,我得到了段錯誤。 Outout

    0熱度

    1回答

    char* lw; if((lw=(char *)calloc(2, sizeof(char))==0)) printf("Failed to allocate.\n"); else printf("allocated %p\n", lw); 我已經閱讀過calloc手冊,需要快速簡單的回答,爲什麼輸出NIL? 它轉到else,所以lw不可能是NIL,然後輸出「分配(無

    1熱度

    5回答

    我想分配一個短褲塊,將其寫入一個文件, 然後再讀回。但是寫入 文件的數據與出現的數據不匹配。我已經將問題 隔離爲以下代碼。任何想法我做錯了什麼? #define CHUNK_SIZE 1000 void xwriteStructuresToFile(FILE *file, void * structureData) { assert((fwrite(structureData, si

    1熱度

    1回答

    有沒有malloc失敗的情況,而calloc返回成功。假設我給malloc(20)和calloc(4*5),是否存在malloc可能失敗和calloc成功的任何情況。如果是這樣的確切原因是什麼。

    0熱度

    2回答

    我寫一個簡單的函數庫池,這將作爲一個參數被我的其他功能來管理內存的大小。 我有保持由用戶初始化的這個大的存儲器池的信息的數據結構。 typedef struct memBlock{ struct memBlock* next; unsigned int size; // Size of this block unsigned int is_used; // bool

    8熱度

    2回答

    IMO一個就夠了,爲什麼calloc要求將它分成兩個參數?

    1熱度

    1回答

    glibc malloc.c中的calloc()(精確地說,public_cALLOc())實現,當它試圖以兩種方式將內存0刪除時,如果字節數大於36則馬上memset的()被調用,否則它把0字節單位而言,這樣的事情: 的glibc-2.13 /的malloc/malloc.c void * public_cALLOc() { ..... int_malloc(); ... ... /