cpp
#include <iostream>
// i : input
// o : output
// stream:流,c++ 标准库提供的类,用于输入输出
// 等价于 C语言的 printf 函数
// 等价 C语言 stdio.h 中的 printf 函数
// 等价 C语言的结构体指针 FILE *,就是流的概念
// 等价 C语言 stdio.h
// std:是一个命名空间,用于封装 C++ 标准库的类和函数
// :: 作用域运算符,用于访问命名空间中的成员,等价于 C语言的 . 运算符
// 这里是访问 std 命名空间中的 cout 类
// cout 类是一个流类,用于输出到标准输出流,就是屏幕,就是 printf 函数
// endl 是一个换行符,用于输出到标准输出流,就是屏幕,等价于 C语言的 \n 换行
// << 是一个流插入运算符,用于将数据插入到流中
// 这里是将 "Hello World!" 插入到 cout 流中
// 等价于 C语言 printf 函数中的 %s 格式化字符串
// >> 是一个流提取运算符,用于从流中提取数据
// 这里是从 cin 流中提取数据到变量 a 中
// 等价于 C语言 scanf 函数中的 %d 格式化字符串
int main()
{
std::cout << "Hello World!" << std::endl;
return 0;
}
可能有的同学不理解 为什么要加 这么多std
因为 cout 和 endl 都属于 C++ 标准库
cpp
std::cout
std::endl
std::string
std::cin
std::vector
它们都在 std里面
cpp
std
├── cout (输出)
├── cin (输入)
├── endl (换行)
├── string (字符串)
└── vector (动态数组)
也就是说 std = 一个大工具箱
cpp
std::cout → 我要输出东西
<< → 把东西送进去
"文字" → 要显示的内容
std::endl → 换行
标准库里的输出工具
↓
输出 "Hello"
↓
标准库里的换行工具
↓
换行
<<表示"把数据送出去"(输出)
>>表示"把数据拿进来"(输入)<< 和 >> 表示的是流向
cpp
#include <iostream>
int main()
{
std::cout << "Enter two numbers: ";
int a, b;
std::cin >> a >> b; // 从终端读取两个值,分别赋值给变量 a 和 b
std::cout << "a + b = " << a + b << std::endl;
return 0;
}