64K 仍然是一塊相當大的內存。不管你的電腦有多少內存, 分配這麼 一大段連續的內存是個不小的要求。標準 C 不保證一個單獨的對象可以 大於 32K, 或者 C99 的 64K。通常, 設計數據結構時 的一個好的思想, 是使它不要求所有的內存都連續。對於動態分配的多維 數組, 你可以使用指針的指針, 在問題 6.13 中有舉例說明。 你可以用鏈接或結構指針數組來代替一個大的結構數組。
如果你使用的是 PC 兼容機 (基於 8086) 系統, 遇到了 64K 或 640K的限制, 可以考慮使用 ``huge" (巨大) 內存模型, 或者擴展或延伸內存, 或 malloc 的變體函數 halloc() 和 farmalloc(), 或者用一個 32 比特 的 ``平直" 編譯器 (例如 djgpp, 參見問題 18.3), 或某種 DOS 擴充器, 或換一個操作系統。
參考資料: [ISO, Sec. 5.2.4.1]; [C9X, Sec. 5.2.4.1]。
翻譯朱群英、孫雲, LaTeX2HTML 編譯 朱群英 (2005-06-23)