7
.
11
我如何在運行期設定數組的大小 ? 我怎樣才能避免固定大小的數組 ?
由於數組和指針的等價性 (參見問題
6.3
), 可以用指向 malloc 分配的 內存的指針來模擬數組。執行
#include <stdlib.h> int *dynarray; dynarray = malloc(10 * sizeof(int));
以後 (如果 malloc 調用成功), 你可以像傳統的靜態分配的數組那樣引用 dynarry[i] (i 從 0 到 9)。唯一的區別是 sizeof 不能給出 ``數組" 的大小。 參見問題
1.12
、
6.13
和
7.9
。
翻譯朱群英、孫雲, LaTeX2HTML 編譯 朱群英 (2005-06-23)