第一个 C++ 程序详解

第一个 C++ 程序详解

一、改进后的第一个程序

#include <iostream>
using namespace std;

int main()
{
    cout << "Hello World!\n";
    return 0;
}Code language: PHP (php)

二、程序结构逐行讲解

1. #include <iostream> 头文件与预处理指令

include 是预处理指令。

作用:在编译之前,把 iostream 文件中的代码插入到当前指令所在位置。

iostream 是头文件(header file),声明了输入输出相关的类、对象和函数。因为通常放在程序开头,所以称为”头文件”。

没有它,就无法使用 cout、cin 等输入输出功能。

注意:i 表示 input,o 表示 output,stream 表示流。合起来 iostream 即输入输出流。

2. using namespace std 命名空间指令

std 是 C++ 标准库所在的命名空间(namespace)。

cout、cin、endl 等都定义在 std 中。

加上这句后,就可以省略 std:: 前缀:

  • 有这行代码时写:cout << “Hello”;
  • 没有这行代码时写:std::cout << “Hello”;

命名空间的详细作用在后续章节专门讲解。

3. int main() 主函数

main 是主函数名,是程序的唯一入口。

一个 C++ 程序必须有且只有一个 main 函数。

int 表示 main 函数的返回值类型,返回给操作系统。

当用户运行 .exe 文件时,操作系统调用 main 函数。

4. 函数体 { … }

函数体用一对大括号 {} 包围。

函数是 C++ 程序中最小的功能单位。

main 函数体中的代码,就是程序启动后要执行的任务。

5. cout << “Hello World!\n” 输出语句

cout 是 C++ 系统预定义的输出流对象,表示标准输出设备(通常是显示器)。

<< 是输出运算符,作用是将右侧的内容输出到左侧的输出流对象。

“Hello World!\n” 是字符串常量,\n 是换行符,表示输出后换行。

等价写法(使用 endl):

cout << "Hello World!" << endl;Code language: JavaScript (javascript)

注意:endl 也是换行,但还会刷新输出缓冲区,效率略低于 \n。

6. return 0 函数返回

退出 main 函数。

return 0; 表示程序正常结束。

返回给操作系统:0 表示正常结束,非 0 表示异常结束。

三、C++ 程序的基本规则

程序由函数组成,main 是程序执行的起点。

语句以分号 ; 结尾,每条语句必须以分号结束。

源文件后缀为 .cpp。

经过编译和链接后生成可执行文件(.exe)。

四、从源程序到可执行程序的过程

源程序(.cpp) → 编译 → 目标文件(.obj) → 链接 → 可执行文件(.exe)

五、小结

  • include <iostream>:引入输入输出功能
  • using namespace std;:简化标准库使用
  • main():程序入口
  • cout << … :向屏幕输出内容
  • return 0;:程序正常结束
  • C++ 程序必须包含一个 main 函数

六、常见疑问解答

Q1:为什么 main 函数前面是 int?

因为 C++ 标准规定 main 必须返回 int,返回给操作系统表示程序运行状态。

Q2:\n 和 endl 有什么区别?

\n 只换行;endl 换行并刷新缓冲区,性能略有差异。

Q3:不写 return 0; 可以吗?

在 main 函数中可以省略,编译器会默认加上 return 0;,但建议显式写出,养成好习惯。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注