C++ 基本语法
C++ 是一种面向对象的编程语言,具有强大的类型系统和丰富的标准库。本指南将介绍 C++ 的基本语法,包括变量、数据类型、运算符、控制流、函数、数组、指针、面向对象编程等。
1. C++ 结构
每个 C++ 程序都至少包含一个 main() 函数,这是程序的入口。以下是 C++ 的最小程序:
#include <iostream> // 引入标准输入输出库
int main() {
std::cout << "Hello, C++!" << std::endl; // 输出语句
return 0; // 返回 0,表示程序正常结束
}
代码解析
#include <iostream>:引入 iostream 头文件,用于输入输出操作。std::cout:用于输出到控制台(终端)。std::endl:换行符。return 0;:返回 0 表示程序正常退出。
2. 变量与数据类型
C++ 是强类型语言,每个变量都必须指定类型。
2.1 基本数据类型
| 数据类型 | 说明 | 典型大小(字节) |
|---|---|---|
int | 整数类型 | 4 |
float | 单精度浮点数 | 4 |
double | 双精度浮点数 | 8 |
char | 字符类型 | 1 |
bool | 布尔值(true/false) | 1 |
void | 空类型(无返回值) | 0 |
2.2 变量声明
int age = 25; // 定义一个整型变量并赋值
double pi = 3.14; // 定义一个双精度浮点数
char grade = 'A'; // 定义一个字符变量
bool isPassed = true; // 定义一个布尔值
2.3 常量
使用 const 定义常量:
const double PI = 3.14159;
PI = 3.14; // ❌ 错误,常量不可修改
3. 运算符
C++ 具有丰富的运算符,包括算术运算符、关系运算符、逻辑运算符等。
3.1 算术运算符
| 运算符 | 说明 | 示例(a = 10, b = 3) |
|---|---|---|
+ | 加法 | a + b → 13 |
- | 减法 | a - b → 7 |
* | 乘法 | a * b → 30 |
/ | 除法 | a / b → 3(整数除法) |
% | 取模 | a % b → 1 |
3.2 关系运算符
| 运算符 | 说明 | 示例(a = 10, b = 3) |
|---|---|---|
== | 等于 | a == b → false |
!= | 不等于 | a != b → true |
> | 大于 | a > b → true |
< | 小于 | a < b → false |
3.3 逻辑运算符
| 运算符 | 说明 | 示例(x = true, y = false) |
|---|---|---|
&& | 逻辑与 | x && y → false |
|| | 逻辑或 | x || y → true |
! | 逻辑非 | !x → false |
4. 条件语句
4.1 if-else 语句
int age = 18;
if (age >= 18) {
std::cout << "你已成年" << std::endl;
} else {
std::cout << "你未成年" << std::endl;
}
4.2 switch 语句
int day = 2;
switch (day) {
case 1: std::cout << "星期一"; break;
case 2: std::cout << "星期二"; break;
default: std::cout << "其他";
}
5. 循环语句
5.1 for 循环
for (int i = 0; i < 5; i++) {
std::cout << "循环次数:" << i << std::endl;
}
5.2 while 循环
int i = 0;
while (i < 5) {
std::cout << "i=" << i << std::endl;
i++;
}
5.3 do-while 循环
int i = 0;
do {
std::cout << "i=" << i << std::endl;
i++;
} while (i < 5);
6. 函数
C++ 使用 returnType functionName(parameters) 语法定义函数。
#include <iostream>
int add(int a, int b) {
return a + b;
}
int main() {
std::cout << add(3, 4); // 输出 7
}
7. 数组
int arr[5] = {1, 2, 3, 4, 5};
std::cout << arr[0]; // 输出 1
8. 指针
int num = 10;
int* p = # // 指针指向 num 的地址
std::cout << *p; // 输出 10
9. 面向对象编程(OOP)
C++ 支持类和对象编程。
class Car {
public:
std::string brand;
int year;
void show() {
std::cout << "品牌: " << brand << ", 年份: " << year << std::endl;
}
};
int main() {
Car myCar;
myCar.brand = "Toyota";
myCar.year = 2023;
myCar.show();
}
10. C++ 标准库
C++ 提供了大量标准库,如:
<vector>:动态数组<string>:字符串处理<map>、<unordered_map>:哈希表<algorithm>:排序、查找
示例:
#include <vector>
std::vector<int> v = {1, 2, 3};
总结
| 语法部分 | 关键点 |
|---|---|
| 变量与数据类型 | int、double、char |
| 运算符 | +、-、*、/ |
| 条件语句 | if-else、switch |
| 循环 | for、while |
| 函数 | returnType functionName() |
| 数组 | int arr[] = {} |
| 指针 | int* p = # |
| 面向对象 | class、object |
更多详细内容请关注其他相关文章!