@@ -3,14 +3,14 @@ sidebar_position: 0
33title : C语言基础
44---
55
6+ ## C与C++
7+
68在很大程度上,C++是C的超集,这意味着一个有效的C程序也是一个有效的C++程序。
79
810C和C++的主要区别是,C++支持许多附加特性。但是,C++中有许多规则与C稍有不同。
911
1012这些不同使得C程序作为C++程序编译时可能以不同的方式运行或根本不能运行。
1113
12- 如何选择编程语言?
13-
1414| 方向 | 语言 | 说明|
1515| -----| -----| -----|
1616| 嵌入式开发| C| 使用C编写嵌入式系统,如嵌入式操作系统、嵌入式设备等|
@@ -23,3 +23,80 @@ C和C++的主要区别是,C++支持许多附加特性。但是,C++中有许
2323| 人工智能| C++| 使用C++编写人工智能算法,如TensorFlow、PyTorch等|
2424| 桌面应用开发| C++| 使用C++编写桌面应用,如微信、QQ等|
2525| 大型软件系统| C++| 使用C++编写大型软件系统,如操作系统、数据库等|
26+
27+ ## 教材选择
28+
29+ C语言诞生于 1972 年,至今已经涌现出诸多教程和教材,其内容基本一致,但讲述方式和分类排版不同。以下是常见的入门教材与推荐说明:
30+
31+ | 教材名 | 作者 | 页数 | 豆瓣评分 | 说明 |
32+ | --------| ------| ------------| ------------| ---------|
33+ | 《C Primer Plus》(第6版) | Stephen Prata | 730 | 9.4 | 全球众多高校和自学者用作入门教材的经典之作 |
34+ | 《C语言程序设计 : 现代方法》(第2版) | K. N. King | 600| 9.4 | 被哈佛、MIT等名校采用,适合大学课程 |
35+ | 《C语言程序设计》(第5版) | 谭浩强 | 370 | 6.5 | 中国C语言教材鼻祖,国内高校广泛使用,但只讲规则,不讲原因。对初学者不友好。 |
36+ | 《C程序设计语言》(第2版) | Brian W. Kernighan & Dennis M. Ritchie | 258 | 9.4 | 掌握C核心思想和标准库,由C语言发明者亲自撰写,被誉为"C语言圣经" |
37+
38+ :::info
39+ 本教程基于《C Primer Plus》,目标是压缩其50%的体积,按知识点重排同时保持其核心内容。
40+ :::
41+
42+ ## 环境安装
43+
44+ 推荐使用WSL2安装Ubuntu24.04,然后使用apt安装gcc、g++、gdb等编译器。
45+
46+ ``` bash showLineNumbers
47+ # 首先更新包列表(需要网络畅通)
48+ sudo apt-get update
49+
50+ # 安装编译和调试工具(需要网络畅通)
51+ sudo apt-get install build-essential gdb
52+
53+ # 测试 GCC(如果安装成功,终端会显示 GCC 的版本信息)
54+ gcc --version
55+
56+ # 测试 G++(如果安装成功,终端会显示 G++ 的版本信息)
57+ g++ --version
58+
59+ # 测试 GDB(如果安装成功,会显示 GDB 的版本信息)
60+ gdb --version
61+ ```
62+
63+ ## 编辑器
64+
65+ [ Vscdoe 官网下载网址] ( https://code.visualstudio.com/download )
66+
67+ - VSCode(Visual Studio Code)是一款通用跨平台的编辑器
68+
69+ 它不会运行程序,它需要安装相应的语言包才能运行程序。它可以编辑任何语言的程序,支持几乎所有主流的开发语言的语法高亮、智能代码补全等。安装过程全部勾选。
70+
71+ - 注意与 Visual Studio 区别
72+
73+ ### 推荐扩展
74+
75+ 使用 VSCode 或 Cursor,安装以下扩展:
76+
77+ | 扩展名称 | 功能描述 |
78+ | ------------------- | ------------------------------------------------------------------ |
79+ | Remote - SSH | 通过SSH连接远程服务器,在本地编辑远程文件 |
80+ | C/C++ | 为 C/C++ 语言提供代码高亮、智能感知(自动补全)、代码格式化和调试等核心功能。|
81+ | Python | 提供Python语言基础支持,包括语法高亮、代码补全和格式化 |
82+ | Pylance | 高性能Python语言服务器,提供类型检查和智能提示 |
83+ | Python Debugger | 支持Python代码的断点调试、变量监控和单步执行 |
84+ | Ruff Formatter | 自动格式化Python代码,保持一致的代码风格 |
85+ | Jupyter | 提供Jupyter Notebook支持,支持在VSCode中编辑和运行Jupyter Notebook |
86+ | Error Lens | 直接在代码行内展示错误和警告信息,无需悬停鼠标 |
87+ | Office Viewer | 在VSCode中直接预览Word、Excel等Office文档并附赠IDE主题 |
88+ | Markmap | 以思维导图的形式展示markdown结构 |
89+ | Markdown All in One | 提供Markdown编辑、预览、导出等功能 |
90+ | SQLite Viewer | 提供SQLite数据库的可视化界面,支持数据浏览和查询 |
91+ | Hex Editor | 提供十六进制编辑器,支持编辑二进制文件 |
92+ | Live Server | 提供本地开发服务器,支持实时预览和自动刷新网页 |
93+ | Git History | 提供Git历史记录的可视化界面,支持查看文件的修改历史 |
94+ | Gitmoji | 在VSCode中使用Gitmoji,支持在提交时使用Gitmoji |
95+ | Docker | 管理Docker容器,支持创建、运行和调试容器化应用 |
96+
97+ ### 易用性配置
98+
99+ - 推荐颜色主题:Dark Modern
100+ - 推荐图标主题:office material
101+ - 推荐字体:Fira Code(可选连字符显示)
102+ - Cursor侧边栏方向修改:` workbench.activityBar.orientation ` ,改为` vertical `
0 commit comments