Appearance
C 语言是什么:开启编程之旅
预计学习时长:约 1.5 小时(含下载安装编译器的等待时间)· 本讲不需要写代码
🎯 学习目标
学完本讲,你将能够:
- 用一句话说清 C 语言是什么、它在编程世界中的位置
- 描述从
.c源代码到可执行程序的完整过程 - 区分编译器与 IDE,说出 gcc、clang、MSVC 的区别
- 在电脑上安装好 VS2026,创建第一个项目并添加
.c文件
🔗 先修知识
本讲是第一课,零基础即可开始,只需要:
- 一台 Windows 电脑(Win10/Win11);
- 能联网下载软件。
开始前确认:你已决定每天留出 2 小时左右的学习时间。编程是手艺活,持续比天赋重要。
一、C 语言是什么
人和人交流用的是自然语言(汉语、英语);人和计算机交流,要用计算机语言写程序、下达指令,让计算机工作。世界上已有上千种计算机语言。
C 语言就是其中一种经典语言,和它并列的还有 C++、Java、Go、Python 等。
用 C 语言写的程序长这样(先不用懂,感受一下):
c
printf("hello C\n");这行代码的意思是让计算机在屏幕上显示“hello C”。学完前两讲,你就能亲手写出它。
为什么从 C 学起
- C 语言语法精炼、概念基础,学懂它再学其他语言会非常快;
- 大量语言(C++、Java、Python 的解释器)本身就用 C(或受它深刻影响)写成;
- C 语言贴近硬件又能做应用,是“既见树木又见森林”的语言。
二、C 语言的历史与地位
C 语言诞生于 20 世纪 70 年代的贝尔实验室,最初是为开发 Unix 操作系统而设计的工具。此后它走向世界,成为操作系统、嵌入式设备、驱动程序的主力语言。
它的地位可以自己去验证:打开 TIOBE 编程语言排行榜,你会看到 C 语言长期位于排行榜前列——这是一种已经流行了 50 年、今天仍在被大量使用的语言。
📘 提高(L2):C 语言的标准版本
语言需要“标准”来规定语法,主流版本:
- C89/C90:最早广泛使用的标准
- C99:引入 long long、// 注释、变长数组等
- C11:本教程主要依据,增加多线程、安全函数等
- C23:最新标准,强制二进制补码、增加
bool关键字等 编译器对新标准的支持程度不同,这也是本教程同时注明 gcc / MSVC 行为的原因。
三、源代码怎么变成可执行程序
3.1 C 是编译型语言
C 源代码是纯文本文件(后缀 .c),文本本身不能直接运行。要经过两个步骤:
- 编译:编译器把每个
.c文件翻译成机器指令,生成目标文件(Windows 上.obj,Linux 上.o); - 链接:链接器把多个目标文件和系统库文件组合成一个完整的可执行文件(Windows 上
.exe)。
text
test.c ─┐
add.c ─┼─► 编译器 ─► test.obj / add.obj ─► 链接器 + 库 ─► xxx.exe
xxx.c ─┘记住两条规则:
- 每个
.c单独编译成对应的目标文件; - 所有目标文件最后统一链接成一个可执行程序。
3.2 编译器三大家族
真正做翻译的是编译器,常见三家:
| 编译器 | 出品方 | 常见平台 |
|---|---|---|
| MSVC | 微软 | Windows,内置于 Visual Studio |
| gcc | GNU 开源社区 | Linux、MinGW(Windows) |
| clang | LLVM 开源项目 | macOS(Xcode 默认)、各平台 |
3.3 IDE 是什么
**IDE(集成开发环境)**把代码编辑器、编译器、调试器、图形界面打包在一起,让写代码、编译、调试一站完成。
| IDE | 内置编译器 | 特点 |
|---|---|---|
| Visual Studio 2026 | MSVC | 功能强、中文界面、企业主流(推荐) |
| Xcode | clang | 苹果电脑专用 |
| Code::Blocks | gcc | 轻量,需自行配置 |
| Dev-C++ | gcc | 小巧但工具老旧,不建议长期使用 |
| CLion | 可配置 | 体验好但收费 |
💡 编译器和 IDE 是两回事:“VS 能编译”本质上是它内置的 MSVC 在工作。
四、安装 VS2026 并创建项目
4.1 安装步骤(精简版)
- 到微软官网下载 Visual Studio Community(社区版,免费);
- 运行安装程序,在“工作负载”页面勾选 “使用 C++ 的桌面开发”;
- 保持默认组件,点击安装(体积较大,耐心等待)。
详细图文步骤(含安装失败排查)见附录 A:环境搭建指南。安装讲解视频可参考资料中讲师给出的 Visual Studio 安装教程。
4.2 创建项目与添加源文件
- 启动 VS2026 → “创建新项目” → 搜索并选择 “空项目”;
- 项目名称和路径尽量用英文、不含空格(例如
D:\code\first); - 在“源文件”文件夹上右键 → 添加 → 新建项 → 选择 C++ 文件,把名称后缀改成
.c(如main.c); - 在“头文件”文件夹上可添加
.h文件。
4.3 源文件与头文件
| 类型 | 后缀 | 主要存放 |
|---|---|---|
| 源文件 | .c | 具体实现(函数定义、代码逻辑) |
| 头文件 | .h | 声明(函数声明、宏、类型定义) |
初学时记住:代码写在 .c 文件里;头文件的作用等学到函数、多文件编程时自然会懂。
⚠️ 安装阶段的常见坑
| 你遇到的现象 | 原因 | 解决办法 |
|---|---|---|
| 新建项目里找不到 C++ 选项 | 安装时没勾“使用 C++ 的桌面开发” | 重新运行安装程序,勾选该工作负载 |
| 文件后缀是 .cpp | 添加文件时没改成 .c | 重命名为 .c(.cpp 按 C++ 编译,语法有差异) |
| 项目编译报奇怪错误 | 路径或项目名含中文、空格 | 改用英文路径重建项目 |
| Ctrl+F5 只闪一下黑窗口 | 调试模式或程序已正常结束 | 用 Ctrl+F5,或在 return 前加暂停 |
| 安装后找不到编译器 | 只装了编辑器没装组件 | Visual Studio Installer 中“修改”补装 |
🛠️ 动手练习
📊 本讲网页练习进度0 / 4(0%)
进度自动保存在本浏览器;编程题不计数,请在编辑器中完成。
练习 1 · ⭐ 基础 · 选择判断
知识点:编译与链接流程
题干:哪个描述是正确的?
练习 2 · ⭐ 基础 · 判断对错
知识点:语言与工具概念
题干:下列说法哪些正确?(多选)
练习 3 · ⭐ 基础 · 填空
知识点:文件类型
题干:填写对应后缀(Windows 平台):源文件 ____,头文件 ____,目标文件 ____,可执行文件 ____。
空①空②空③空④
练习 4 · ⭐ 基础 · 选择
知识点:编译器家族
题干:Xcode 默认使用哪个编译器?
练习 5 · ⭐⭐ 提高 · 实操
知识点:环境安装
🛠 动手编程题 · 请在 VS2026(或你的编辑器)中完成
在电脑上安装 VS2026 社区版。
✅ 过关标准:新建项目窗口能搜到“空项目”,说明 C++ 组件已装好。
网页内无法练习写代码,亲手敲、亲手编译才能真正学会。下方按顺序展开 思路 → 步骤 → 答案。
💡 提示 1(思路)
关键只有一步:勾选正确的工作负载。
🧭 提示 2(步骤)
- 官网下载 Community 版
- 勾选“使用 C++ 的桌面开发”
- 安装完成后重启电脑(如提示)
🔑 参考答案与解释
安装失败多数是网络或磁盘空间问题,可参考附录 A的排查清单。
练习 6 · ⭐⭐ 提高 · 实操
知识点:项目与文件
🛠 动手编程题 · 请在 VS2026(或你的编辑器)中完成
创建空项目,添加一个名为 `main.c` 的源文件。
✅ 过关标准:解决方案资源管理器中,该文件位于“源文件”下,后缀确为 .c。
网页内无法练习写代码,亲手敲、亲手编译才能真正学会。下方按顺序展开 思路 → 步骤 → 答案。
💡 提示 1(思路)
添加新建项时默认后缀是 .cpp,必须手动改。
🧭 提示 2(步骤)
- 源文件右键 → 添加 → 新建项
- 文件名输入 main.c
- 项目路径保持全英文
🔑 参考答案与解释
看到文件图标和 .c 后缀即成功;这是你整个学习生涯的第一个 C 文件。
练习 7 · ⭐⭐ 提高 · 实操(环境总验收)
知识点:完整开发流程
🛠 动手编程题 · 请在 VS2026(或你的编辑器)中完成
把下面代码完整敲入 `main.c`,按 Ctrl+F5 运行:
📄 main.c · ✅ 完整程序(可直接复制编译)
c
#include <stdio.h>
int main()
{
printf("我的环境配置成功啦\n");
return 0;
}✅ 过关标准:弹出窗口显示文字,无报错。
网页内无法练习写代码,亲手敲、亲手编译才能真正学会。下方按顺序展开 思路 → 步骤 → 答案。
💡 提示 1(思路)
报错就按“安装阶段坑表”逐项排查,不是代码问题就是环境问题。
🧭 提示 2(步骤)
- 检查 #include 和大括号
- Ctrl+F5 运行
- 中文若乱码,确认文件为 UTF-8 编码
🔑 参考答案与解释
看到文字输出,说明编辑器、编译器、链接器全部正常工作——环境关已过。代码含义将在第 2 讲详细拆解。
练习 8 · ⭐⭐⭐ 挑战 · 命令行实操(选做)
知识点:理解 IDE 背后的编译器
🛠 动手编程题 · 请在 VS2026(或你的编辑器)中完成
如果电脑装有 gcc(或安装 MinGW),打开命令行,进入 `main.c` 所在目录,执行:
text
gcc main.c -o main
main.exe观察:同一份源代码,用命令行也能编译运行。
网页内无法练习写代码,亲手敲、亲手编译才能真正学会。下方按顺序展开 思路 → 步骤 → 答案。
💡 提示 1(思路)
IDE 只是帮你自动调用了这些命令。
🧭 提示 2(步骤)
- gcc 后第一个参数是源文件
- -o 指定输出的程序名
- 直接输入 exe 名称运行
🔑 参考答案与解释
能跑通说明你已理解“IDE 不是魔法”。本教程正文仍以 VS2026 为主,gcc 作为对照。
📝 小结与自测
核心结论
- C 语言是人与计算机交流的经典编译型语言,诞生于 Unix 开发。
- 过程:
.c→(编译)→ 目标文件 →(链接 + 库)→.exe。 - 编译器三大家:MSVC、gcc、clang;IDE 是集成了编译器的开发环境。
- 学习首选 VS2026 + “使用 C++ 的桌面开发”工作负载;源代码放
.c,声明放.h。
自测清单
| 我能独立做到 | ✅ |
|---|---|
| 说清 C 语言是什么 | |
| 默画编译链接流程图 | |
| 区分编译器与 IDE | |
| 成功安装 VS2026 并创建 .c 文件 | |
| 运行程序看到自己的输出 |
🔬 选学拓展(L3)
以下内容为选学
现在跳过完全不影响后续学习。
L3-1:编译型与解释型语言的区别
编译型语言(C、C++)先整体翻译成机器码再运行,运行速度快、但换平台通常要重新编译;解释型语言(Python)由解释器在运行时逐行读取执行,跨平台方便、但通常较慢。Java、C# 介于两者之间(先编译成中间字节码,再在虚拟机上运行)。
L3-2:C 语言能做什么
- 操作系统与驱动:Windows、Linux 的内核大量使用 C;
- 嵌入式:单片机、路由器、汽车电子、智能家电的固件;
- 底层组件:数据库、编译器、游戏引擎的核心部分;
- 小工具与小游戏:也就是本教程带你做的部分。
L3-3:为什么不只学“流行的新语言”
语言只是工具,核心是计算思维(如何把问题拆成步骤)。C 语言让你看见内存、指针、编译过程,这些底层理解是高级语言替你藏起来的;先“知其所以然”,再学任何上层语言都会更扎实。
准备好后,进入第 2 讲:第一个程序,正式开始写代码。