第一个程序:Hello World
这是什么:Hello World = 编程新手的第一个程序,让屏幕打印一句话。
为什么用:上一章配好了环境,这一章跑起你人生第一段 C++——让电脑跟你打招呼。写完第一个程序你才算真正上手:代码不是纸上谈兵,编译出来的二进制真的会跑。
如何用:新建一个 main.cpp,把下面的完整代码抄进去,用 g++ 编译、运行,再逐行拆解这 7 行各自在干什么。
三条环境路
| 路线 | 适合谁 | 说明 |
|---|---|---|
| Visual Studio 2022 社区版 | Windows 用户首选 | 免费、装完就能写能跑,最省心 |
| VS Code + MinGW-w64 | 想轻量、爱折腾的 | 编辑器 + g++ 编译器自由组合 |
| OnlineGDB | 今天就想跑代码的 | 零安装,浏览器里语言选 C++20,粘贴点 Run |
本板块的编译命令统一用 g++(三条路都通用,VS 2022 有一键运行按钮,看按钮就行)。
完整代码
新建 main.cpp(.cpp 后缀就是 C++ 源文件的"身份证"),整段写入:
#include <iostream>
int main() {
std::cout << "Hello, World!" << std::endl;
std::cout << "你好,世界!这是我写的第一个 C++ 程序" << std::endl;
return 0;
}
编译并运行
在 main.cpp 所在的文件夹打开命令行(地址栏输 cmd 回车),依次输入:
g++ main.cpp -o main
./main
Windows 用户运行那步写
.\main.exe(或直接main);Linux/macOS 写./main。
你会看到
Hello, World!
你好,世界!这是我写的第一个 C++ 程序
恭喜!🎉 比起 Python 的一行 print,你用了 7 行——但每一行都有它的道理,下面逐行拆解。
逐行解读
| 代码 | 作用 |
|---|---|
#include <iostream> |
"搬工具箱":把输入输出库带进来,cout(打印)就住在里面 |
int main() |
程序的大门:C++ 固定从 main 函数开始执行,每个程序必须有它 |
{ } |
大括号圈出 main 的"地盘",里面的活干完程序就结束 |
std::cout << "..." |
打印:cout 是屏幕喇叭,<< 把内容"推"给它显示 |
std::endl |
换行(Python 的 print 自带换行,C++ 要自己写) |
return 0; |
向系统汇报"程序正常结束"(0 = 一切顺利) |
和 Python 打印对比
| Python | C++ | |
|---|---|---|
| 打印一句 | print("Hi") |
std::cout << "Hi" << std::endl; |
| 行尾 | 不用分号 | 每句话必须以分号结尾 |
| 入口 | 从第一行直接跑 | 必须从 main 函数跑 |
| 编译 | 无需编译 | 需要 g++ 编译后才能运行 |
初看 C++ 啰嗦,但这些"仪式感"换来的是编译器帮你把关每一处细节——少个引号都别想骗过它。
include 搬工具,main 是大门,cout 当喇叭,分号是句号。
常见报错与修复
| 报错 | 原因 | 修复 |
|---|---|---|
‘cout’ was not declared |
忘了 #include <iostream> |
在文件顶部补上 |
expected ';' before '}' token |
某行漏了分号 | 找到漏分号的行,补上 ; |
‘main’ was not declared in this scope |
没写 main 函数 |
确保有 int main() { ... } |
⚠️ 新手翻车现场
翻车一:改完代码没重新编译
你改了 cout 里的文字,运行还是旧的
问题:C++ 是编译型语言,源码改完必须重新 g++ 编译,生成新的可执行文件,才能看到新效果。
修正:改完代码 → 再执行一次 g++ main.cpp -o main → 再 ./main。
翻车二:在 Python 习惯下漏写分号
std::cout << "Hi" // 漏了分号
std::endl;
问题:C++ 每条语句必须以分号结尾,编译器会报错。
修正:补上 std::cout << "Hi" << std::endl;。
动手改
- 加一行
std::cout << 2026 << std::endl;——注意数字不用引号 - 把两句台词换成你的自我介绍,重新编译运行(改完必须重新编译,否则跑的还是旧程序)
- 去掉某行末尾的分号再编译,认识一下 C++ 报错长什么样
下一章:变量与运算,让程序学会记数据 🐸