第一程序:Hello World 与 C++ 语法基础
这是什么以及为什么需要它?
想象一下,你给机器人下达指令:“说‘你好!’”。机器人必须理解你的语言并执行操作。在编程中,这种语言就是代码,而最简单的指令就是在屏幕上输出文本。Hello World 是一个传统的入门程序,它只是显示“Hello, World!”这句话。它就像是学习任何编程语言的“第一步”。
为什么需要它?首先,你可以确认你的工具(编译器)能正常工作。其次,你可以看到程序的基本结构:代码从哪里开始,在哪里结束,如何编写指令。这就像在跑步之前先学会系鞋带。
语法和代码示例
语法是编写代码的规则。在 C++ 中,这些规则很严格:每条指令以分号 ; 结尾,代码块用花括号 {} 括起来。让我们通过示例来理解。
示例 1:经典的 Hello World
#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() {
cout << "第一行" << endl;
cout << "第二行" << endl;
cout << "第三行" << endl;
return 0;
}
每个 cout 输出一行。如果不加 endl,文本会连成一行。试着去掉 endl,你会看到区别。
示例 3:同时输出数字和文本
#include <iostream>
using namespace std;
int main() {
int age = 12; // 创建一个变量 age,并存入数字 12
cout << "我" << age << "岁了" << endl;
return 0;
}
这里我们使用了变量 age。int 是用于整数的数据类型。符号 << 就像“拼接”各部分:文本、数字、再文本。
示例 4:从用户获取输入
#include <iostream>
using namespace std;
int main() {
string name; // 用于文本的变量(字符串)
cout << "你叫什么名字? ";
cin >> name; // 等待用户输入名字
cout << "你好," << name << "!" << endl;
return 0;
}
string 是用于文本的类型。cin 是“从键盘读取”的指令。箭头 >> 表示数据从键盘流向变量。
示例 5:简单的数学运算
#include <iostream>
using namespace std;
int main() {
int a = 5;
int b = 3;
int sum = a + b; // 将数字相加
cout << "总和:" << sum << endl;
return 0;
}
计算机能够计算。+、-、*、/ 是常见的数学运算。结果保存在变量 sum 中。
与 Python 的对比
Python 是另一种语言,对初学者更简单。看看同样的程序在 Python 中是什么样子:
# Python:无需引入库
print("Hello, World!") # 一条指令就完成了
# 输入数据
name = input("你叫什么名字? ")
print("你好," + name + "!")
# 数学运算
a = 5
b = 3
sum = a + b
print("总和:", sum)
区别:
- 在 Python 中不需要
#include、main()、return 0—— 代码更简短。 - 无需声明变量类型(
int、string)—— Python 会自动识别。 - 指令末尾不需要
;。 - 代码块通过缩进(空格)来区分,而不是花括号。
C++ 提供了更多控制权,但需要更多的“仪式感”。Python 就像自行车,C++ 就像手动挡摩托车。
新手常见错误
- 忘记分号
;—— 编译器会报错。检查每条指令。 - 单词拼写错误:比如把
cout写成cout,include写成#include。计算机不容忍拼写错误。 - 忘记写
using namespace std;—— 那样你就得在每个地方写std::cout,很繁琐。 - 引号混淆:文本用双引号
" ",字符用单引号' '。字符串请使用双引号。 - 未闭合花括号
}—— 程序不知道哪里结束。数一下左花括号和右花括号的数量。 - 在代码中使用西里尔字母:C++ 不喜欢指令中出现俄语字母。只能使用拉丁字母。
- 忘记写
return 0;—— 在某些编译器中会触发警告。
建议: 如果出现错误,不要慌张。阅读编译器的提示信息,它通常会指出问题在哪一行。善用 Google 搜索!
总结
你已经用 C++ 编写了你的第一个程序!现在你知道了:
- 如何输出文本和数字