21.20 為什麼 C 沒有嵌套函數?

實現嵌套函數不是件簡單的事, 它們需要可以正當的訪問包含函數的 本地變量, 為了簡單化, 這個功能是被故意捨棄的。gcc 的擴展 功能允許函數嵌套。 許多可能使用嵌套函數的地方 (例如 qsort  的比較函數), 一個充分但少許麻煩的解決方法是使用一個定義為 靜態 (static) 的鄰近函數, 如果需要, 可以通過少量靜態 變量進行通訊。一個乾淨些的方法是傳遞一個包含所需內容的結構指針, 雖然 qsort 不支持這種方法。

翻譯朱群英、孫雲, LaTeX2HTML 編譯 朱群英 (2005-06-23)