当前位置: 首页 > news >正文

【MFC教程】C++基础:01 小黑框跑起来

——写给纯小白的 C++「语言地基」速成课
(看完就能自己敲出一个可运行的 .exe)


0. 开场 30 秒

目标:用 Windows 自带的「小黑框」(命令行窗口)跑起一段真正属于你的 C++ 程序。
门槛:零。只要会打字、会点鼠标。


1. 把“原料”准备好——基本类型与运算

计算机只认识 0 和 1,但 C++ 贴心地给了几种“盒子”来装不同大小的数字和字符。
最常用的四个盒子:

盒子名能装什么占多大举 例
int整数4 字节int age = 18;
double带小数点的数8 字节double pi = 3.1415;
char单个字符1 字节char grade = 'A';
bool真 / 假1 字节bool ok = true;

运算符号就像数学里的加减乘除,但多了一些电脑特有写法:

  • 四则运算:+ - * /
  • 整除取余:%(7 % 3 结果是 1)
  • 逻辑运算:&&(与)、||(或)、!(非)

一行代码就能让电脑帮你算:

int n = 10 + 5 * 2;   // 先乘除后加减,n 得到 20

2. 让程序“拐弯”——流程控制

电脑很笨,只能一行一行往下读。我们用流程控制语句告诉它:“这里要绕路!”

if / else:做选择

int x = 7;
if (x % 2 == 0)cout << "偶数";
elsecout << "奇数";

for:按次数循环

for (int i = 0; i < 10; ++i)   // 从 0 数到 9cout << i << ' ';

while:条件满足就继续

int sum = 0, i = 1;
while (i <= 100) {   // 算 1+2+...+100sum += i;++i;
}

switch:多选一

char op = '+';
switch (op) {case '+': cout << "加法"; break;case '-': cout << "减法"; break;default:  cout << "未知";
}

3. 把重复代码打包——函数

函数 = 给一段代码起名字,以后喊名字就能用。

写法 3 步曲

  1. 声明(告诉编译器“我有这么个函数”)
  2. 定义(真正写函数体)
  3. 调用(在 main 里用)
// 1. 声明(通常在头文件或 main 之前)
int add(int a, int b);// 2. 定义
int add(int a, int b) {return a + b;
}// 3. 调用
int main() {cout << add(3, 4);   // 屏幕打印 7
}

4. 把工具箱打开——头文件 & 命名空间

头文件:拿来主义

别人写好的代码,用 #include 直接搬进来。

  • #include <iostream> 提供输入输出
  • #include <cmath> 提供数学函数 sqrt, pow

命名空间:防止重名

C++ 标准库里的名字都放在 std 这个抽屉里。

  • 偷懒写法:using namespace std;(整个抽屉端走)
  • 安全写法:std::cout << "Hello";(精确拿取)

5. 把源代码变成 .exe——编译模型(一张图秒懂)

源码(.cpp) ──► 编译器 ──► 目标文件(.obj) ──► 链接器 ──► 可执行文件(.exe)
  • 编译:检查语法,翻译成机器码,生成 .obj
  • 链接:把多个 .obj 和库文件粘在一起,生成最终 .exe

在 Visual Studio 里只需 3 步

  1. 新建 → 控制台应用 → 起名叫 Hello
  2. 把下面 7 行代码粘进 Hello.cpp
  3. Ctrl + F5(开始执行不调试)→ 小黑框蹦出来!
#include <iostream>
using namespace std;int main() {cout << "Hello, 小黑框!" << endl;return 0;
}

常见报错及对策

报错信息含义怎么办
LNK2019: unresolved external symbol声明了函数却没定义把函数体补全
C2065: 'cout' : undeclared identifier没包含头文件或没写 std::#include <iostream>using namespace std;

6. 5 分钟速通清单(背下来就能出门)

  • 4 个基本盒子:int double char bool
  • 4 条流程控制:if/else for while switch
  • 3 步函数:声明 → 定义 → 调用
  • 2 个头文件:#include <iostream> #include <cmath>
  • 1 句命名空间:using namespace std;
  • 1 个快捷键:Ctrl + F5 跑出小黑框

7. 下一步

小黑框跑起来了?恭喜!你已经完成「语言地基」。
接下来回到主线,去学面向对象——类、继承、多态,它们才是 MFC 世界的真正入口。

http://www.dtcms.com/a/356415.html

相关文章:

  • 【MFC应用创建后核心文件详解】项目名.cpp、项目名.h、项目名Dlg.cpp 和 项目名Dlg.h 的区别与作用
  • Java项目打包成EXE全攻略
  • Kafka 副本同步异常与 ISR 收缩故障排查实录
  • C语言————操作符详解
  • 《华为战略管理法:DSTE 实战体系》读书笔记
  • 【完整源码+数据集+部署教程】骨折检测系统源码和数据集:改进yolo11-EfficientHead
  • 【微信小程序】微信小程序基于双token的API请求封装与无感刷新实现方案
  • 华为无线AC主备配置案例
  • KNN算法详解:鸢尾花识别和手写数字识别
  • mysql安全运维之常见攻击类型与防御指南-从SQL注入到权限提升
  • .Net应用程序和SqlServer数据库使用tls加密会话过程
  • DMZ层Nginx TLS 终止与安全接入配置实战20250829
  • C5仅支持20MHZ带宽,如果路由器5Gwifi处于40MHZ带宽信道时,会出现配网失败
  • Git 合并冲突
  • 【网络】snat/MASQUERADE作用和应用场景
  • 【混合开发】Android+WebView视频图片播放硬件加速详解
  • 网页提示UI操作-适应提示,警告,信息——仙盟创梦IDE
  • 嵌入式学习 day61 DHT11、I2C
  • 项目一系列-第8章 性能优化Redis基础
  • Python OpenCV图像处理与深度学习
  • 30分钟入门实战速成Cursor IDE(2)
  • 30分钟入门实战速成Cursor IDE(1)
  • 微硕WINSOK高性能NP沟道MOS管WSP4067在Type-C双向快充电源管理系统中的应用
  • Vibe Coding、AI IDE/插件
  • Ansible Playbook 实践
  • 随机森林的 “Bootstrap 采样” 与 “特征随机选择”:如何避免过拟合?(附分类 / 回归任务实战)
  • html入门教程
  • Java使用apache.commons.math3的DBSCAN实现自动聚类
  • 【Docker/Redis】服务端高并发分布式结构演进之路
  • 构建免费的音视频转文字工具:支持多语言的语音识别项目