⚙️ C++

C++ 简介:历史、特性、在 C++ 中的应用

```html

这是什么以及为什么需要它?

想象一下,你给机器人下达指令。如果你说“做点什么”,它会不知所措。但如果你说“向左转,走5步,抬起手”——它就会精确地执行所有操作。C++ 就是这样一种语言,你用它对计算机编写非常精确的指令。它就像乐高积木:你自己组装每一个零件,因此可以制作出快速且强大的程序。

为什么要学习它?首先,许多游戏(例如《我的世界》)、浏览器、航天器都是用 C++ 编写的。其次,它能让你像程序员一样思考:你将理解计算机如何存储数字,内存如何工作。这就像不仅知道如何开车,还了解引擎盖下有什么。

即使你是初学者,C++ 也没有看起来那么可怕。我们将从最简单的事情开始——比如编写“你好,世界!”和计算糖果。

语法和代码示例

语法就是语言的规则,就像俄语中的语法。在 C++ 中,每个命令都以分号 ; 结束,代码块用花括号 {} 括起来。让我们看一些实际的例子。

示例 1:你好,世界!

#include <iostream>  // 引入输入/输出库
using namespace std;  // 这样就不用在 cout 前写 std::

int main() {          // 主函数,程序从这里开始
    cout << "Hello, world!" << endl;  // 在屏幕上输出文本
    return 0;         // 表示程序成功结束
}

工作原理: #include 就像我们拿来一套现成的工具。int main() 是程序的入口。在 {} 内部编写命令。cout 就像一台“打字机”,用于输出文本。endl 表示换行。

示例 2:计算糖果

#include <iostream>
using namespace std;

int main() {
    int candies = 10;           // 整数——糖果数量
    int friends = 3;            // 朋友数量
    int each = candies / friends;  // 平均分配糖果(整数除法)
    
    cout << "每个人得到 " << each << " 颗糖果" << endl;
    return 0;
}

解释: int 是用于整数的数据类型(如 10, 3)。/ 是除法。但这里有个小陷阱:如果用 10 除以 3,结果是 3,而不是 3.33,因为我们处理的是整数。余数(1 颗糖果)会丢失——这一点需要记住!

示例 3:猜数字

#include <iostream>
using namespace std;

int main() {
    int secret = 7;  // 隐藏的数字
    int guess;       // 用于存储用户答案的变量
    
    cout << "猜一个 1 到 10 之间的数字:";
    cin >> guess;   // 读取用户输入的数字
    
    if (guess == secret) {            // 如果猜对了
        cout << "你赢了!" << endl;
    } else {                          // 否则
        cout << "没猜对。数字是 " << secret << endl;
    }
    return 0;
}

新知识点: cin 就像“麦克风”,用于监听用户的输入。if 用于条件判断。== 是比较运算符(不要与赋值的 = 混淆!)。else 表示“否则”。

示例 4:循环——重复 5 次

#include <iostream>
using namespace std;

int main() {
    for (int i = 1; i <= 5; i++) {  // 初始:i=1;条件:当 i<=5;步进:i+1
        cout << "行号 " << i << endl;
    }
    return 0;
}

如何理解: for 就像“重复 5 次”。int i = 1 创建一个计数器。i <= 5 表示只要计数器不大于 5,就继续循环。i++ 表示每次循环后计数器加 1。最终屏幕上会显示 5 行。

示例 5:函数——你自己的助手

#include <iostream>
using namespace std;

// 创建一个按名字打招呼的函数
void greet(string name) {  // void 表示函数不返回任何值
    cout << "你好, " << name << "!" << endl;
}

int main() {
    greet("Anna");  // 用名字 "Anna" 调用函数
    greet("Peter");
    return 0;
}

核心思想: 函数就像菜谱。你只需编写一次 greet 这个“菜谱”,然后就可以多次使用它。string 是用于文本的数据类型。括号内的 (string name) 是传递给函数的“原料”。

与 Python 的对比

Python 就像口语:“嘿,电脑,做这个。” C++ 则像技术说明书:“将寄存器 AX 取出,写入 5,执行加法。” 让我们通过例子来对比。

任务 C++ Python
输出文本 cout << "Hello"; print("Hello")
输入数字 cin >> x; x = int(input())
条件判断 if (x > 0) { ... } if x > 0: ...
循环 5 次 for (int i=0; i<5; i++) for i in range(5):
函数 void f(int a) { ... } def f(a): ...

主要区别:

  • 分号: 在 C++ 中,它们是必需的。
```