calloc(10,4)和calloc(1,40)之間的區別是什麼?calloc(10,4)和calloc(1,40)之間的區別是什麼?
我看到這種行爲:
Thing** things = (Thing**)calloc(1, 10 * sizeof(Thing*));
// things[0] != 0
Thing** things = (Thing**)calloc(10, sizeof(Thing*));
// things[0] == 0
我想知道爲什麼。編輯:失去我的想法是爲什麼,現在都似乎導致零...至少使問題有趣,爲什麼calloc不只是採取一個單一的參數,如malloc?
+1;我自己想過這個。我想知道在所有情況下它是否完全一樣;即標準的任務是這樣嗎? – Bathsheba