Z
ZHANK
编程在线教程C++ 教程Hello World 与编译
入门基础

Hello World 与编译

第一个 C++ 程序、g++ 编译、main 函数、命名空间 std

Hello World 与编译

C++ 版 Hello World 多了几行——#include <iostream>std::cout、命名空间。不复杂,但每个都有含义。

学完本章你将: 理解 iostream、std::cout/endl、using namespace、编译命令。


第一个 C++ 程序

cpp
#include <iostream>    // C++ 标准输入输出头文件

int main() {
    std::cout << "Hello, World!" << std::endl;
    return 0;
}

编译运行:

bash
g++ -std=c++17 hello.cpp -o hello && ./hello

逐行解析

`std::cout <<` —— 输出流

<< 是输出运算符,可以链式调用:

cpp
std::cout << "年龄:" << 25 << " 岁" << std::endl;
// 输出:年龄:25 岁

`std::endl` vs `'\n'`

cpp
std::cout << "A" << std::endl;  // 换行 + 刷新缓冲区
std::cout << "B" << '\n';       // 只换行,不刷新(更快)

`using namespace std;`

cpp
#include <iostream>
using namespace std;  // 之后可以直接写 cout

int main() {
    cout << "Hello!" << endl;  // 省略 std::
    return 0;
}

⚠️ 在头文件中绝不使用 using namespace std; —— 它会污染所有包含该头文件的命名空间。在 .cpp 文件中也谨慎使用。


g++ 常用编译选项

bash
g++ -std=c++17 -Wall -Wextra -O2 hello.cpp -o hello
#   标准版本    所有警告  额外警告  优化级别