【问题标题】:Learning C from K&R's "The C Programming Language" [closed]从 K&R 的“C 编程语言”学习 C [关闭]
【发布时间】:2013-10-21 03:48:04
【问题描述】:

对于我大学计算机科学课程的一部分,我们需要学习 C。我的讲师推荐了 K&R 的 The C Programming Language 2nd Edition。在阅读了前几页之后,它清楚地表明这本书不是一个完整的指南,有时可能会产生误导,所以我想知道我是否应该从这本书中“学习”C? (这也是一本很老的书)

我有基本的 Java 背景,所以我了解程序的基本元素(变量、数据类型、循环等),所以看 C 语法应该不会太令人震惊。

【问题讨论】:

  • “这也是一本很老的书” C 也是一种古老的语言 :-) 我无法说出另一本可以与 K&R 的寿命相媲美的编程语言的书。
  • “看看 C 语法应该不会太令人震惊”——我不会依赖它。对于来自 Java 的人来说,您将很难处理指针语法。 K&R 说“C 有时因其语法而受到谴责”。不要陷入认为 C 就像 Java 一样的陷阱。

标签: c computer-science


【解决方案1】:

K&R 是学习 C 的标准文本。它也被视为标准,您可以在某些编译器(例如 gcc)中请求 K&R 标准。还有一种以书名命名的格式类型。只需使用它 - 它简洁明了。

关于它的时代的评论 - 如果您考虑 C 并且它是各种标准和方言,这本书并不古老。我还没有参与过使用 C11(最新标准)的项目,许多公司和项目将明确使用尖端技术的旧标准(例如 c89)。还有很多公司坚持K&R兼容性,有些公司甚至坚持K&R代码格式化风格。

我还可以确保您不会将 C 视为说 Python,其中每个版本都几乎过时了旧版本。 C 和它的标准在它们是标准的意义上不会老化 - 你选择一个适合你需要的。 C89 在今天(2013 年)和 89 年一样新。不要引用我的话,但我相当有信心 ansi C(C89)是使用最广泛的标准,“C 编程语言”即与 ansi 打交道C.

另一本非常好的书是《The C Book》。我认为这是一本很棒的书,但它比 K&R 还要古老。

看看这里:

http://en.wikipedia.org/wiki/The_C_Programming_Language

http://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html#C-Dialect-Options

http://en.wikipedia.org/wiki/ANSI_C

【讨论】:

  • 一个关于这个问题的非常有用的答案,在一般意义上的 C 和学习什么标准。谢谢。
猜你喜欢
  • 1970-01-01
  • 2013-03-25
  • 1970-01-01
  • 2011-02-22
  • 1970-01-01
  • 2011-02-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多