跳到主要内容
C++ 入门指南:编程基础与环境搭建 | 极客日志
C++ 算法
C++ 入门指南:编程基础与环境搭建 是 C++ 入门系列的第一部分,主要介绍编程基础概念、开发环境搭建及程序结构。内容包括语言层次、C++ 历史特点、应用领域;Windows 下编译器选择与配置验证;Hello World 程序编写与编译运行流程;以及 C++ 程序的基本框架、预处理指令、main 函数详解、语句代码块、注释规范和格式建议。旨在帮助初学者理解 C++ 核心概念并成功运行第一个程序。
微码行者 发布于 2026/3/21 更新于 2026/5/8 15 浏览第 1 章 C++ 入门准备
1.1 什么是编程语言
编程语言 是人与计算机沟通的桥梁,它是一套用于定义计算机程序的语法规则。就像人类使用语言交流一样,编程语言让开发者能够"告诉"计算机要执行什么任务。
编程语言的层次:
机器语言 :计算机直接理解的二进制代码(0 和 1)
汇编语言 :使用助记符的低级语言
高级语言 :接近人类语言的编程语言,如 C++、Python、Java
为什么选择 C++ 作为第一门编程语言?
理解计算机原理 :C++ 让你更接近硬件,理解内存管理
广泛的应用领域 :游戏开发、系统软件、高频交易等
强大的性能 :执行效率高,资源消耗可控
良好的就业前景 :工业界需求稳定,薪资水平较高
1.2 C++ 的发展历史与特点
C++ 的历史时间线:
1979 年 :Bjarne Stroustrup 在贝尔实验室开始开发"C with Classes"
1983 年 :正式更名为 C++
1985 年 :第一个商业版本发布
1998 年 :C++98 成为第一个 ISO 标准
2011 年 :C++11 标准发布,带来重大更新
2020 年 :C++20 标准发布
C++ 的主要特点:
面向对象 :支持封装、继承、多态
系统级编程 :可以直接操作内存和硬件
高效性能 :接近 C 语言的执行效率
标准库丰富 :提供大量可重用的组件
兼容 C 语言 :大多数 C 程序可以直接在 C++ 中运行
1.3 C++ 的应用领域
应用领域 具体应用 为什么选择 C++ 游戏开发 游戏引擎(Unreal Engine)、游戏逻辑 高性能、硬件控制能力强 系统软件 操作系统、数据库、编译器 底层访问能力、高效 嵌入式系统 物联网设备、汽车电子 资源消耗可控、实时性强 金融服务 高频交易、金融建模 执行速度快、延迟低 科学计算 物理模拟、数值分析 计算性能强 图形处理 图像处理、计算机视觉 与硬件结合紧密
第 2 章 开发环境配置
2.1 编译器选择 编译器是将 C++ 源代码转换为计算机可执行程序的工具。
GCC/G++ (GNU Compiler Collection)
开源免费,跨平台
Linux 系统默认编译器
命令:g++ filename.cpp -o program
Clang/LLVM
苹果公司主导开发
编译速度快,错误信息友好
命令:clang++ filename.cpp -o program
MSVC (Microsoft Visual C++)
Windows 平台主要编译器
Visual Studio 集成
功能强大,调试方便
通过 Microsoft 直接下载使用
2.2 Windows 环境搭建(推荐新手)
环境配置验证 验证脚本: 创建一个简单的测试程序验证环境是否正确配置:
#include <iostream>
#include <cstdlib>
int main () {
std::cout << "=== 环境测试 ===" << std::endl;
std::cout << "1. 编译器版本测试:" << std::endl;
#ifdef __GNUC__
std::cout << " 使用 GCC/G++ 编译器,版本:" << __GNUC__ << "." << __GNUC_MINOR__ << std::endl;
#endif
#ifdef _MSC_VER
std::cout << " 使用 MSVC 编译器,版本:" << _MSC_VER << std::endl;
#endif
#ifdef __clang__
std::cout << " 使用 Clang 编译器" << std::endl;
#endif
std::cout << "\n2. 基本功能测试:" << std::endl;
std::cout << " 算术运算:3 + 5 * 2 = " << 3 + 5 * 2 << std::endl;
std::cout << "\n3. 环境信息:" << std::endl;
std::cout << " int 类型大小:" << sizeof (int ) << " 字节" << std::endl;
std::cout << " char 类型大小:" << sizeof (char ) << " 字节" << std::endl;
std::cout << "\n=== 测试完成 ===" << std::endl;
return 0 ;
}
2.3 学习资源与社区
菜鸟教程 C++ 教程
慕课网 C++ 课程
B 站 C++ 教学视频
入门 :《C++ Primer Plus》
进阶 :《C++ Primer》
深入 :《Effective C++》
2.4 第一个 C++ 程序:Hello World
#include <iostream>
using namespace std;
int main () {
cout << "Hello, World!" << endl;
return 0 ;
}
// hello.cpp:注释,说明文件名
#include <iostream>:引入输入输出库
using namespace std;:C++ 命名空间指令
int main():程序的主函数,所有 C++ 程序从这里开始执行
cout:标准输出,用于在屏幕显示文本
<<:输出运算符
"Hello, World!":要输出的字符串
endl:换行并刷新缓冲区
return 0;:程序正常结束
g++ hello.cpp -o hello
clang++ hello.cpp -o hello
VS Code 搭建完成后可以直接编译运行,更适合新手。
2.5 编译与运行流程详解(可略过) 源代码 (.cpp) → 预处理器 → 编译器 → 汇编器 → 链接器 → 可执行文件
g++ -c hello.s -o hello.o
g++ -S hello.i -o hello.s
预处理 :处理 #include、#define 等指令
g++ -E hello.cpp -o hello.i
第 3 章 C++ 程序结构
3.1 基本程序框架
#include <iostream>
using namespace std;
int main () {
return 0 ;
}
#include <iostream>
#include <cmath>
using namespace std;
const double PI = 3.1415926 ;
const int MAX_SIZE = 100 ;
double calculateArea (double radius) ;
int main () {
int age = 20 ;
double score = 95.5 ;
char grade = 'A' ;
cout << "=== 学生信息 ===" << endl;
cout << "年龄:" << age << " 岁" << endl;
cout << "分数:" << score << " 分" << endl;
cout << "等级:" << grade << endl;
double area = calculateArea (5.0 );
cout << "半径为 5 的圆面积:" << area << endl;
return 0 ;
}
double calculateArea (double radius) {
return PI * radius * radius;
}
3.2 预处理指令详解 #ifdef WINDOWS
#include <windows.h>
#elif defined(LINUX)
#include <unistd.h>
#endif
#ifndef MY_HEADER_H
#define MY_HEADER_H
#endif
#define MAX_SIZE 100
#define SQUARE(x) ((x)*(x))
#define DEBUG
#include <iostream>
#include "myheader.h"
3.3 main 函数详解
int main () {
return 0 ;
}
int main (int argc, char * argv[]) {
return 0 ;
}
int main (int argc, char * argv[], char * envp[]) {
return 0 ;
}
#include <iostream>
using namespace std;
int main (int argc, char * argv[]) {
cout << "程序名:" << argv[0 ] << endl;
cout << "参数个数:" << argc - 1 << endl;
for (int i = 1 ; i < argc; i++) {
cout << "参数" << i << ": " << argv[i] << endl;
}
return 0 ;
}
编译运行:./program arg1 arg2 arg3
3.4 语句与代码块 return 0 ;
break ;
continue ;
if (x > 0 ) {
}
while (x < 10 ) {
}
x = 5 + 3 ;
y = sqrt (25.0 );
{
int x = 10 ;
cout << x << endl;
}
3.5 注释的使用
解释代码意图
标记待办事项
临时禁用代码
提高代码可读性
int age = 20 ;
#if 0
cout << "这段代码被禁用" << endl;
#endif
double calculateArea (double radius) {
return PI * radius * radius;
}
int x = 10 ;
int timeout = 30 ;
int api_timeout = 30 ;
3.6 空白字符与代码格式
提高代码可读性
不影响程序逻辑
包括空格、制表符、换行符
int main () {
int x=5 ;
int y=10 ;
if (x>y){
cout<<"x 更大" <<endl;
} else {
cout<<"y 更大" <<endl;
}
return 0 ;
}
int main () {
int x = 5 ;
int y = 10 ;
if (x > y) {
cout << "x 更大" << endl;
} else {
cout << "y 更大" << endl;
}
return 0 ;
}
使用一致的缩进(推荐 4 个空格)
运算符前后添加空格
逗号后添加空格
大括号单独一行
合理使用空行分隔逻辑块
3.7 实践练习
#include <iostream>
using namespace std;
int global_var = 100 ;
void testFunction () {
int local_var = 50 ;
cout << "局部变量:" << local_var << endl;
cout << "全局变量:" << global_var << endl;
}
int main () {
cout << "程序开始" << endl;
int main_var = 200 ;
cout << "main 函数的变量:" << main_var << endl;
testFunction ();
cout << "程序结束" << endl;
return 0 ;
}
int x = 5
int main () {
Int main () {
}
#include <iostream>
#include <iostream>
int main () {
cout << x << endl;
return 0 ;
}
本章小结
✓ 了解 C++ 的基本概念和应用领域
✓ 成功搭建开发环境并运行第一个程序
✓ 理解 C++ 程序的基本结构
✓ 能够编写、编译和运行简单的 C++ 程序
✓ 掌握基本的代码格式和注释规范
下一步: 在掌握基本结构后,我们将进入第二部分,学习 C++ 的数据类型和运算符,开始编写更有意义的程序。
成功安装并配置开发环境
能够编译运行 Hello World 程序
理解 main 函数的作用
知道如何添加注释
了解基本的程序结构
相关免费在线工具 加密/解密文本 使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
Gemini 图片去水印 基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online
Base64 字符串编码/解码 将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
Base64 文件转换器 将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
Markdown转HTML 将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
HTML转Markdown 将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online