1.2 环境设置

本篇学习编辑器、编译器和终端的最小组合,并掌握带警告和调试信息的基础编译命令。

环境设置

概念说明

写 C 程序最基础的开发环境由三部分组成:编辑器、编译器和终端。 编辑器负责写代码,编译器负责把源文件变成目标文件和可执行文件,终端负责执行编译命令、运行程序和查看错误信息。

无论你使用的是 Windows、Linux 还是 macOS,真正的主线都一样: 写代码 -> 编译 -> 运行 -> 看输出或看报错 -> 修改后再次编译

初学阶段不要一开始就在很多 IDE 之间反复切换。 先固定一套最小环境,能稳定完成“新建文件、编译、运行、看警告”这几件事,比工具本身的高级功能更重要。

语法/规则

  1. Windows 上常见的是 MinGW-w64MSYS2 或 Visual Studio 自带工具链;Linux 和 macOS 上常见的是 gccclang
  2. 安装完成后,先在终端确认编译器是否可用,例如执行 gcc --versionclang --version
  3. 建议初学阶段使用带警告和调试信息的编译参数,例如 -std=c11 -Wall -Wextra -g
  4. 编译源文件的基础命令是 gcc hello.c -o hello,其中 -o 用来指定输出文件名。
  5. Windows 上通常运行 hello.exe./hello.exe,类 Unix 系统上通常运行 ./hello
  6. 如果代码修改后运行结果没变化,首先检查自己是不是忘了重新编译。
  7. 输入法和标点也会影响代码,中文引号、中文分号、中文括号都会导致编译失败。

示例

1
2
3
4
5
6
#include <stdio.h>

int main(void) {
    printf("Hello, C environment!\n");
    return 0;
}
1
2
gcc hello.c -std=c11 -Wall -Wextra -g -o hello
./hello

输出结果:

1
Hello, C environment!

这组命令除了生成可执行文件,还打开了常用警告和调试信息。 后面你开始排查错误时,这些选项会非常有帮助。

常见错误

  1. 编译器已经安装,但其 bin 目录没有加入环境变量,导致终端找不到 gccclang
  2. 代码改完以后直接运行旧的可执行文件,没有重新编译,误以为程序“没有生效”。
  3. 在 Windows 和 Linux/macOS 上混用运行命令,例如把 hello.exe./hello 的用法写反。
  4. 代码里混入中文标点、全角空格或错误编码,导致编译器报出看起来很奇怪的语法错误。
  5. 一上来就依赖 IDE 的按钮,而不理解背后做了什么,后面遇到构建失败时就很难定位问题。
本文禁止转载
使用 Hugo 构建
主题 StackJimmy 设计 由 Hobin 魔改
最近构建时间:2026-04-17 19:07:48 CST
载入天数...载入时分秒...
发表了 1 篇文章 · 发表了 152 篇笔记 · 总计 18 万 0 千字