Skip to main content

Cripple C

⚠️ 你先别急 ⚠️ 🚧 本文章仍在施工中 🚧

为什么 C 语言诡异离奇、缺陷重重,却获得了巨大的成功? ——Dennis Ritchie

本文聚焦 C 语言初学者常遇到的困难和常落入的陷阱,并提供相应的解决方案。

本文的特点在于短平快,没有编程史学的迷思和编程哲学的探讨。当然如果你很愿意与作者探讨这些问题,欢迎你来联系我,不吝赐教。

本文完全基于 ISO C,这也是本文与经典著作最大的不同——不会长篇累牍的介绍任何关于早已过时的 K&R C 的内容。同时 C99 及其之后的特性也略有涉及,并用版本名称标出。

需要注意的是,虽然是 C 语言的核心内容,但本系列将不深入讨论指针、数组、字符串的问题。浅尝辄止,是因为我之后可能单独写一个系列。

本系列会尽量避免设计 C++ 的内容,即时提到 C++,也是完全无关 C++ 超越 C 的那部分内容的。(例如 C 语言的某特性在 C++ 某个版本移除,或是 C 语言借鉴了某 C++ 特性云云)

参考资料

  • 《C 陷阱与缺陷》
  • 《C 专家编程》
  • cppreference.com
  • ISO C11 标准