1010
1111** 你不用学一辈子 C 语言,但我们可以做一辈子朋友。**
1212
13- OK,我们开始。这一章的内容很轻松,就当闲聊了。
13+ OK,我们开始。这一章的内容很轻松(不理解的概念性内容跳过就好) ,就当闲聊了。
1414
1515## 1. 什么是编程
1616
1717### 1.1 定义
1818
19+ 用不严谨的话说:** 编程是把人类世界的问题,抽象成计算机世界的逻辑,并指挥计算机去执行。**
20+
21+ 这个过程包含两个核心步骤:
22+
23+ 1 . ** 思维的形式化(Formalization)** :
24+ 你首先要把脑海中模糊的想法(比如“帮我算一下全班平均分”),拆解成逻辑严密、毫无歧义的步骤(“读取所有分数” -> “累加” -> “除以总人数”)。
25+ 2 . ** 逻辑的翻译(Translation)** :
26+ 使用一种人能读懂、计算机也能通过工具(编译器)理解的语言——** 编程语言** ,将上述步骤记录下来。
27+
28+ 所以,编程不是单纯的“敲代码”,那是打字员的工作。
29+
1930### 1.2 编程的两个起源
2031
21321 . 两个计算模型:图灵机 (Turing Machine) 和 lambda 演算 (Lambda-calculus)
@@ -78,6 +89,10 @@ OK,我们开始。这一章的内容很轻松,就当闲聊了。
7889
7990你的目标,是在更高的抽象层次上思考:通过掌握一个个“套路”,** 将解决问题的步骤打包成可以直接调用的“模式”** 。
8091
92+ ### 2.4 我需不需要理解某些“概念”?
93+
94+ 追究概念的“本质”是非常难的。许多概念的演变,涉及复杂的历史过程,涉及到十分基础的数学、逻辑等理论原理。关于编程语言理论的很多讨论超出了本教程的范围——很多时候,本教程只讲应用。
95+
8196## 3. 关于 C
8297
8398### 3.1 发展历史
@@ -211,25 +226,19 @@ IDE 一般会自带 debugger。
211226
212227目前主流的大语言模型在幻觉问题上已经有了很大改善,辅助一些比较简单的内容的学习时(几乎)不会胡编乱造,可以放心大胆地提问。
213228
214- 截至目前(注:2025.8.4) ,主流的大语言模型提供商有如下几个:
229+ 截至目前,主流的大语言模型提供商有如下几个:
215230
216231- 国外:
217- - OpenAI:** GPT** 系列和 ** o** 系列,免费用户只能体验有限功能;Plus 订阅每个月 20\$ ,Pro 订阅每个月 200\$ 。
218- - Google:** Gemini** 系列,免费用户在官网上的使用次数受限;在 ** Google AI Studio** 上可以免费使用。
219- - Anthropic:** Claude** 系列,官网注册需要国外手机号,免费用户只能体验有限功能。在某些 AI 编辑器中可以直接使用。
220-
221- Anthropic 还推出了终端编程助手 [ ** Claude Code** ] ( https://www.anthropic.com/claude-code ) ,Pro 用户使用额度较少,Max 用户额度较多。充 Max 一定要充每个月 200 美元的。
222-
223- 这个公司对中国不友好。
224-
225- - xAI:** Grok** 系列,自 Grok 4 起,只有付费用户才能在官网使用。
232+ - OpenAI:** GPT** 系列。
233+ - Google:** Gemini** 系列。
234+ - Anthropic:** Claude** 系列。
235+ - xAI:** Grok** 系列。
226236
227237- 国产:
228238 - DeepSeek:[ 官网] ( https://chat.deepseek.com/ ) 免费使用。
229239 - Kimi:[ 官网] ( https://www.kimi.com/ ) 免费使用。
230240 - 通义千问:[ 官网] ( https://chat.qwen.ai/ ) 免费使用。
231- - 质谱清言:[ 官网] ( https://chat.z.ai/ ) 免费使用。
232- - 豆包:不要用豆包写代码。太糖了。
241+ - 智谱清言:[ 官网] ( https://chat.z.ai/ ) 免费使用。
233242
234243在 [ ** Poe** ] ( https://poe.com ) 上充值(每天有免费额度)后,可以使用上述所有模型。
235244
@@ -283,7 +292,7 @@ Code is cheap, show me the proof.
283292## 7. 推荐阅读或学习
284293
2852941 . ** SICP** (Structure and Interpretation of Computer Programs) 第二版(用 ** Scheme** 写的那个版本)
286- 2 . ** UML **
295+ 2 . ** CS : APP ** (Structure and Interpretation of Computer Programs)
2872963 . [ ** pl-docs** ] ( https://github.com/FrankHB/pl-docs/blob/master/zh-CN )
288297
289298注:[ ** CS 自学指南** ] ( https://csdiy.wiki/CS%E5%AD%A6%E4%B9%A0%E8%A7%84%E5%88%92/ ) 上面汇集了计算机各个领域的课程资料。
@@ -330,7 +339,7 @@ Code is cheap, show me the proof.
330339
331340<template #question>
332341
333- 根据 3.3 节, 以下哪些是 C 语言的主要应用领域?(多选)
342+ 以下哪些是 C 语言的主要应用领域?(多选)
334343
335344</template >
336345
@@ -354,7 +363,7 @@ C 语言的核心优势在于系统级编程和对硬件的直接控制。
354363
355364<template #question>
356365
357- 关于 2.2 节中 ` for ` 和 ` while ` 的“套路”(Idioms),哪个描述是正确的?
366+ 关于 ` for ` 和 ` while ` 的“套路”(Idioms),哪个描述是正确的?
358367
359368</template >
360369
@@ -366,3 +375,24 @@ C 语言的核心优势在于系统级编程和对硬件的直接控制。
366375因此,选项 B 是对 ` for ` 循环“套路”的正确描述。
367376
368377</Quiz >
378+
379+ <Quiz
380+ type="single"
381+ : options ="[
382+ { label: 'VS Code', value: 'A' },
383+ { label: 'MSVC', value: 'B' },
384+ { label: 'Clang', value: 'C' },
385+ { label: 'MSVC', value: 'D' }
386+ ] "
387+ answer="A"
388+ >
389+
390+ <template #question>
391+
392+ 以下哪个工具** 不** 是编译器?
393+
394+ </template >
395+
396+ GCC,Clang,MSVC 是常见编译器,VS Code 是代码编辑器。
397+
398+ </Quiz >
0 commit comments