🔷 第二章 C++语言基础
📄 一句话概括

第一章看的是"骨架",第二章开始往骨架里"填料"。这一节先把最经典的那个程序从头到尾摆出来——一个能跑的 C++ 程序,就是一个文件里按顺序放着四段料:#include(借工具)→ using namespace(省事写法)→ int main() { }(入口,程序真正干活的地方)→ 注释(给人看的说明)。后面 2.1.1~2.1.7 就是把每一段料单独拆开讲透。

一、先看全貌:完整的第一个程序

// hello.cpp —— 我的第一个 C++ 程序        ← ④ 注释:给人看,编译器不理
#include <iostream>                       // ① 预处理:把输入输出功能借过来
using namespace std;                      // ② 名字空间:以后写 cout 不用写 std::

int main() {                              // ③ 主函数:程序从这里开始跑
    cout << "Hello, C++!" << endl;        //    往屏幕上送字,endl 换行
    system("pause");                      //    停一下,别让窗口一闪就没了
    return 0;                             //    交差:0 =一切正常
}

这八行里,只有一行是"真正在干活"的(cout 那行)。其余都是"搭台子":借工具、省写法、开大门、收工交差。新手常犯的错,九成都出在搭台子的地方——少个分号、少个头文件、名字打错。

二、四段料分别是什么

段落 长相 作用 少了它
① 预处理指令 #include <iostream> 把标准库里"输入输出"的部分搬进本文件 报错 cout was not declared
② 名字空间 using namespace std; 省去每次写 std:: 的麻烦 得写成 std::cout、std::endl
③ 主函数 int main() { ... } 程序唯一的入口,花括号里写要做的事 链接错误:找不到入口
④ 注释 // ... 或 /* ... */ 给自己和同事留说明,不参与编译 不影响运行,但代码会变得难懂
📝 一个比喻

把程序比作开一间小店:#include 是"去仓库把货架搬来";using namespace 是"给货架贴好门牌,以后不用每次都喊全称";main 是"店门,客人只从这里进";注释是"贴在墙上的操作说明"。

三、两类"标点",先把话说清

教材这一节还在开头引入了两个词,后面 2.2 会展开,这里先认识:

一句话区分:常量是"货",符号是"语法零件"。cout << "Hello"; 这一行 = 名字(cout)+ 符号(<< 和 ;)+ 常量("Hello")。

四、从键盘到屏幕:四步

写代码 .cpp → Ctrl+S 保存 → F11 编译(译成机器码 + 链接)→ F9 运行 → 屏幕出字

关键认知:C++ 是编译型语言(1.1),你写的东西计算机一行都看不懂,必须先整体翻译成机器码,才能跑。所以第 3 步不过,就没有第 4 步——报错不是"程序坏了",是"翻译没通过"。

五、动手 Demo:原样敲一遍,一个字都别自己改

  1. 打开 Dev-C++ → Ctrl+N 新建源文件 → Ctrl+S 保存为 hello2.cpp(路径不含中文)
  2. 把上面八行代码照抄进去(中文注释可以自己改)
  3. F11 编译 → 看下方"编译信息"区:应为 0 errors(有 warning 可先不管)
  4. F9 运行 → 弹出黑窗口显示 Hello, C++! 和"请按任意键继续"

看到什么算成功:屏幕上出现 Hello, C++!,且窗口没有一闪而过。 看到什么说明不对:报错 → 按 1.3.2 的三条铁律依次查(分号 / 大小写 / 中文引号);窗口闪退 → 检查 system("pause"); 那行有没有漏。

30 秒实验:把 cout 那行复制两遍,改成输出你的名字和今天日期(三行 cout)。再挑战一下:把三行改成一行,用多个 << 串起来,看看输出有什么不同——你会直观感受到 << 是可以"接龙"的。

六、常见误区

  1. "main 里的代码越多越厉害"——不是。main 应该短:只负责"安排活儿",活儿让别的函数干(第 5 章之后会讲)。现在先用它装几行练习语句
  2. "注释写得越多越好"——注释要写为什么这么写,不是把代码翻译一遍。// 输出 Hello 这种就是废话
  3. "程序跑出结果就说明我都懂了"——能跑只是及格。能说清每一行是干嘛的才算过关
  4. "第一行可以随便挪位置"——#include 习惯放在文件最前面,因为后面的代码要靠它借来的工具
自测四问(点开对答案) 1. 一个最简单的 C++ 程序,四段料按顺序是什么?——`#include` 预处理指令 → `using namespace std;` 名字空间 → `int main() { }` 主函数 →(贯穿全篇的)注释。 2. 哪一段是"程序唯一的入口"?——`main`。改成别的名字(比如 `Main`)就找不到入口,链接会失败。 3. 从写完代码到看见结果,中间隔着哪两步?——编译(F11,译成机器码并链接)和运行(F9)。 4. 常量与符号各指什么?——常量是写死的值(`123`、`"Hello"`);符号是 `+ - << ; { }` 这类语法零件。

相关笔记