[连载] C++ 零基础入门-3.C++变量与数据类型 一步一步实战
内容涵盖:1) Visual Studio 2022环境下的项目创建与管理;2) 基本数据类型(int、double、char、string、bool)的定义与使用;3) 变量赋值与输出操作;4) 调试技巧(F5/F9/F10/F11快捷键使用)。通过一个包含个人信息输出的完整代码示例,详细演示了变量声明、初始化和输出的全过程。教程强调实践性.本文是《C++零基础到底层实战》系列教程的第3篇,重点
作者:咏方舟-长江支流 日期:2026-02-27
《C++ 零基础到底层实战-全套31篇 · 体系化教程》,从环境安装→基础语法 → 面向对象 → 多线程 → 智能指针 → 鸿蒙原生开发,一套打通:桌面开发 / 嵌入式 / 鸿蒙 / 高薪底层开发。
🔰 C++零基础入门 · 第3篇 C++变量与数据类型 一步一步实战
✅ 标准C++ 🖥️ Windows VS2022/2026 📱 鸿蒙 DevEco 🐧 Linux GCC 🍎 macOS Clang
📌 标准C++跨平台说明
变量、数据类型在所有平台行为一致,鸿蒙、Linux、Windows均可直接运行。
【C++零基础入门】第3篇:C++变量与数据类型-一步一步实战
本节目标
◦ VS创建和打开项目
◦ 函数
◦ 理解变量:存储数据的盒子
◦ 掌握常用数据类型
◦ 定义、赋值、输出
开发环境
◦ 操作系统
Windows 10
◦ 开发工具
Visual Studio 2022/2026,简称VS2022/VS2026,或VS (安装更新教程)
知识回顾:
◦ 开发工具Visual Studio 2022 安装
详细安装更新见 [连载] C++ 零基础入门-1.Visual Studio环境安装)
◦ 创建项目(本篇会写文字过程,方便初次阅读本连载读者)
详细过程 见 [连载] C++ 零基础入门-2.第一个HelloWorld程序 创建项目
◦ 运行
按F5或点「本地Windows调试器」
◦ 调试(极期重要,本篇会写文字总结,图片及详细请参考以下链接)
详细过程 见 [连载] C++ 零基础入门-2.第一个HelloWorld程序 单步调试代码
下面是简单总结:
单步执行 F11,按一下,执行一行语句,继续按F11,逐语句执行,碰到函数进入函数也是一行一行的执行;
过程执行 F10,按一下,执行一行语句或函数(不进入函数)
断点 F9,设置断点或去掉当前行的断点标识
按F5运行程序,执行 到断点,程序自动停下来,此时方便查看当前程序状态、变量值,方便监测,之后可以使用逐语句单步执行或进入函数体内单步执行
◦ 语句\表达式\预处理\标准输出cout\链式写法
见 【C++ 刨根问底】世界上最好的 Hello World!底层解密,80% 人只写不懂,别不信?
Step 1 创建项目
详细过程 见 [连载] C++ 零基础入门-2.第一个HelloWorld程序 但这里附文字步骤,熟悉创建项目过程的读者可跳过此步:
在开始菜单中点击 Visual Studio ,打开Visual Studio ,可以“打开最近使用的内容”,也可以直接点击“创建新项目”,还可以点击“继续但无需代码”而打开Visual Studio集成开发环境,简称IDE。
1> 在 Visual Studio 中,打开 “文件 ”菜单,然后选择“ 新建 > 项目 ”以打开“ 创建新项目 ”对话框。 在所有语言下拉框中,选择C++ ,然后在下面的列表中,选择控制台应用,然后选择“下一步”。
2> 在“配置新项目”对话框中,在“项目名称编辑”框中输入 HelloWorld,因为VS中一个解决方案可以包含1个或多个项目,这里只一个演示项目,所以钩选“将解决方案和项目放在同一个目录中”,可以在“位置”中更改项目目录。
3> 然后选择“创建”,以创建项目,系统自动生成代码。
Step 2 打开项目
1 > 方法一:如果VS已关闭,打开VS时弹出对话框,直接在“打开最近使用的内容”列表中,单击之前的项目如HelloWorld.sln(.sln是解决方案扩展名,可包含一个或多个项目proj),实际就是打开了HelloWorld项目HelloWorld.vcxproj。

2> 方法二:在 Visual Studio 中,打开 “文件 ”菜单,然后选择“ 打开 > 项目或解决方案 ”,然后选择.sln或.vcxproj后点“打开”。

3> 方法三:在 Visual Studio 中,打开 “文件 ”菜单,然后选择“ 最近使用的项目和解决方案 ”,然后在菜单列表中选择即可。
Setp 3 项目目录结构
在解决方案资源管理器(如果已隐藏或关闭,主菜单“视图”>“解决方案资源管理器”)中,有一个解决方案,包含了一个项目,项目中只有一个HelloWorld.cpp源文件。如下图,可以用记事本打开文件,内容是用文本或xml格式记录了它们之前的关系。
Setp 4 总结HelloWorld代码
#include <iostream>
int main()
{
std::cout << "Hello World!\n";
}
1> 扩展名
C++初始代码,在HelloWorld.cpp中,扩展名cpp即为c++拼c plus plus简写。
2>预处理指令
因为需求是在标准输出设备如屏幕显示Hello World!,但是HelloWorld.cpp文件的代码中并没有功能程序实现输出,只是想使用现成的或别人已经实现的功能程序。而C++提供了一套标准的程序实现了包括输出输出功能在内的程序集,因此使用者希望系统直接把这个程序拷贝过来,而使用#include <iostream>这个预处理指令,让系统在编译时把相应的iostream程序原封不动的拷到HelloWorld.cpp替换掉#include <iostream>这一行,就可以直接使用里面的功能如输出cout。
3>调用标准程序功能
把标准程序包含在HelloWorld.cpp中后,我们就可以调用标准程序中如输出功能cout,在之前的连载中,我们以仙桃为例其全称是湖北省仙桃市为例,是因为为了避免重复,特别是你多用几个#include后可能有重复名字冲突,因此我们用std::cout即命名标准库之下的的cout对象。
4>函数、程序的入口
C++程序的入口,是main()函数,所谓函数,也可叫方法,避免和初中高中数学知识混淆,即独立完成一项目功能的一个语句或多个语句,它们包含在 {}中。而{}里甚至一行语句也可以没有。
一个语句都没写的函数是空函数,就是为了占位,为将来程序的扩展在架构设计中非常重要。
见 【C++ 刨根问底】世界上最好的 Hello World!底层解密,80% 人只写不懂,别不信?
Step 5:变量和常量
在编程中,我们经常会用到变量和常量来处理数据,理解它们的概念对于掌握 C++ 编程至关重要。
理解变量 - 存储数据的盒子
想象你有一栋房子,房子里有不同的房间,每个房间都可以存放不同的东西。变量就如同这些房间,它是用于存放数据的容器。
例如,我们要记录一个人的年龄,就可以创建一个名为 age 的变量来存放这个信息。因为年龄通常用整数表示,在 C++ 中整数类型为 int,所以我们这样定义变量:int age。
如果在定义变量的同时就赋予它一个初始值,即初始化变量,可以写成 int age = 20;。
int age = 20;
当然,也可以先定义变量,之后再进行赋值,像这样:
int age;
age = 20;
理解常量 - 固定不变的数据
常量是在程序运行过程中其值不能被改变的数据。例如,在数学中,圆周率 π 始终是一个固定的值,约为 3.14159。在 C++ 编程里,我们可以通过特定的方式来定义常量。
定义常量的方式:
1>使用 const 关键字:
const int daysInWeek = 7;
这里,我们定义了一个名为 daysInWeek 的常量,它的数据类型是 int,值为 7。通过 const 关键字修饰后,这个变量就成为了常量,在程序后续的代码中不能再对其进行赋值修改。如果尝试修改,例如 daysInWeek = 8;,编译器会报错。
2>使用 #define 预处理器指令(这是一种宏定义方式):
#define PI 3.14159
这种方式定义的 PI 也是一个常量。在预处理阶段,编译器会将代码中所有出现 PI 的地方替换为 3.14159。不过,使用 const 定义常量是更现代和推荐的方式,因为 const 常量有数据类型,而宏定义只是简单的文本替换,可能会带来一些潜在的问题。
让我们回顾之前的 Hello World 程序:
int main()
{
std::cout << "Hello World!\n";
}
在这个语句 std::cout << "Hello World!\n"; 中,"Hello World!\n" 就是一个字符常量。字符常量是固定不变的字符序列,这里它代表要输出到标准输出设备(通常是屏幕)的内容。与变量不同,变量的值是可以改变的,而这个字符序列在程序运行过程中始终保持不变。std::cout 是 C++ 标准库中用于输出的对象,通过 << 操作符将字符常量 Hello World!\n 发送到标准输出。\n 是一个转义字符,表示换行,所以输出完 Hello World 后会换行。
Setp 6 常用类型
◦ int:整数,用于表示整数数值,例如年龄、数量等。
◦ double:小数,用于表示带有小数部分的数值,例如身高、体重等。
◦ char:字符,用于表示单个字符,如字母、数字字符或符号等。
◦ string:字符串,用于表示一串字符,例如姓名、地址等。
◦ bool:布尔,用于表示逻辑值,只有 true(真)和 false(假)两个取值,常用于条件判断。
程序清单
#include <iostream>
#include <string>
using namespace std;
int main() {
// 定义变量
int age = 20;
double height = 1.75;
char sex = 'M';
string name = "ZhangSan";
bool isStudent = true;
// 输出
cout << "姓名:" << name << endl;
cout << "年龄:" << age << endl;
cout << "身高:" << height << endl;
cout << "性别:" << sex << endl;
cout << "是否学生:" << isStudent << endl;
cout << "程序运行完成,按回车键退出!" << endl;
std::cin.get();
return 0;
}
逐行解释
#include <iostream>:输入输出头文件,用于使用`cout`等输入输出操作。
#include <string>:字符串头文件,用于使用`string`类型,可省略。
using namespace std;:使用标准命名空间,这样可以直接使用`cout`、`string`等标准库中的名称。
int main():程序入口函数。
int age = 20;:定义一个整数类型的变量`age`并初始化为20。
double height = 1.75;:定义一个双精度浮点数类型的变量`height`并初始化为1.75。
char sex = 'M';:定义一个字符类型的变量`sex`并初始化为'M'。
string name = "ZhangSan";:定义一个字符串类型的变量`name`并初始化为"ZhangSan"。
bool isStudent = true;:定义一个布尔类型的变量`isStudent`并初始化为`true`。
cout << "姓名:" << name << endl;:输出字符串"姓名:"和变量`name`的值,然后换行。
cout << "年龄:" << age << endl;:输出字符串"年龄:"和变量`age`的值,然后换行。
cout << "身高:" << height << endl;:输出字符串"身高:"和变量`height`的值,然后换行。
cout << "性别:" << sex << endl;:输出字符串"性别:"和变量`sex`的值,然后换行。
cout << "是否学生:" << isStudent << endl;:输出字符串"是否学生:"和变量`isStudent`的值,然后换行。
cout << "程序运行完成,按回车键退出!" << endl;:输出字符串,然后换行。
std::cin.get(); windows系统用system("pause");暂停程序,防止窗口一闪而过,方便查看输出结果,这里使用标准输入,并根据上而的示按回车键退出。
return 0;:程序正常结束,返回值0表示程序运行成功。
Setp 7 运行
按F5运行程序成功,。

动手练习 修改代码,将`name`改为你的名字,`age`改为你的年龄,然后运行程序,查看输出结果。
📘 本篇是【C++零基础到底层实战】系列免费教程第3篇,全文step-by-step,小白可直接复制运行。本系列一共分为三大模块:
免费入门:零基础快速上手
进阶精讲:面向对象/内存/STL核心
底层高阶:多线程、智能指针、性能调优、企业级规范(AI很难替代)
后续我会持续更新全套教程,需要的朋友可以关注+收藏,不迷路。
如果你想一次性拿到整套体系化PDF,可以看我主页介绍或公众号 金质打印通,从入门到底层,一套打通,自学、做课都能用。
🔔 下一篇预告:第4篇 · C++ 键盘输入 cin 一步一步学。标准C++,鸿蒙通用,敬请期待。
—— 用标准C++,一套代码,全平台通行。
—— 本系列所有代码均为标准C++,兼容Windows/鸿蒙/Linux/macOS ——
大家有什么想法和建议或意见,欢迎在评论区留言,点赞、关注、收藏不迷路!
即日起公众号 GoldPrinter 正式开放,需要本系列完整 PDF 的朋友可以关注领取。
声明:本文作者 咏方舟-长江支流 相应内容版权归原作者所有,如需转载,请保留完整的内容及出处。
更多推荐




所有评论(0)