一、编程语言全景:不同领域用不同语言
应用领域 | 主流语言 | 备注 |
系统开发 / 嵌入式 | C / C++ | 与机器打交道,贴近底层 |
服务端 / 分布式系统 | Java | 分布式系统、分布式服务、安卓开发 |
脚本控制 / AI | Python | 库非常丰富,适合控制脚本、实现 AI 算法;偏应用层、不适合看底层。AI 智能体的技能调用基本都是通过 Python 程序实现的 |
前端 | HTML / CSS / JavaScript | 浏览器上运行的程序:网页、WebAPP |
操作系统 | C / Rust | 如 Linux 内核 |
服务端(通用) | Go / Java / Python / C++ | |
客户端 | iOS:Objective-C、Swift;Android:Java、Kotlin;鸿蒙 OS | |
游戏开发 | C# | 脚本控制 |
数据库操作 | SQL | |
脚本 / 运维 | Shell |
二、C/C++ 学习路线
- 基础语法:程序环境(Dev-C++、VSCode、VS2026)、程序结构、输出语句、数据类型与变量、输入数据、逻辑语句、数组、字符串
- 结构性知识:结构体、指针、类与对象
- 数据结构:数组、链表、队列、栈、树、图;集合框架:线性表、集合、K-V 对、哈希表;特殊结构:哈夫曼树、LZW 字典
- 编程范式:面向过程、面向对象、面向切面、函数式编程;面向对象三大特性(封装、继承、多态)、设计原则、设计模式
- 并发编程:结合操作系统知识
- 网络通信编程:结合计算机网络知识
- 语言高级特性:每门语言自己独有的部分
三、C 语言概述
3.1 C 语言是怎么来的
1972 年,贝尔实验室的丹尼斯·里奇(Dennis Ritchie)为重写 UNIX 操作系统设计了 C 语言。50 多年过去,它依然是"底层之王"。
3.2 C 语言在计算机里的位置
层级(上 → 下) | 代表 | 说明 |
应用层 | App、网页、小程序 | 离人最近 |
运行环境层 | Python 解释器、Java 虚拟机、游戏引擎 | |
C 语言的地盘 | Linux/Windows 内核、硬件驱动、嵌入式、MySQL 等数据库 | 离机器最近的高级语言 |
硬件层 | CPU、内存、硬盘、外设 |
- C++、Java、C#、Go 的语法都源自 C,连 Python 解释器(CPython)本身就是 C 写的 —— C 是很多语言的"母语"
- 越往下越接近机器,越往上越接近人,C 正好卡在中间的关键位置
3.3 四大特点
- 快:编译成机器码直接跑,性能是编程语言的天花板
- 小而精:核心只有 32 个关键字(C89 标准),语法两周能过完,但越挖越深
- 贴近硬件:指针可以直接读写内存,这是操作系统必须用 C 的原因
- 信任程序员:不做内存安全检查,威力大、坑也多(野指针、内存泄漏)—— 所以指针是重点也是难点
3.4 编译流程:从源代码到可执行文件
#include <stdio.h>在编译之前就会被展开(这一步叫预处理),printf的真身就在这个库里;没有它,链接器会报"找不到 printf"
- 一次翻译、永久运行,不像 Python 要边解释边执行 —— 这就是 C 快的根本原因
四、C 语言入门
4.1 程序入口:main 函数
程序入口,没有它程序就不能运行:
4.2 打印语句 printf
printf= print +f(format),即格式化打印语句:
4.3 格式化占位符
占位符 | 对应类型 | 说明 |
| 整数(int) | |
| 长整型(long) | |
| 超长整型(long long,C99) | |
| 浮点数(float) | |
| 双精度(double) | |
| 浮点数 | n 确定小数点后保留几位,如 |
| 字符串 | |
| 单个字符 |
小坑记录:课堂板书写的是 long long 配 %ld,后来查了一下,严格来说 %ld 对应 long,long long 要配 %lld,Windows 下用错真的会出问题。记在这里,以后别写错~
4.4 转义字符
不可见的控制字符,使用\拼接一个符号来表示:
\n—— 换行符
\t—— 制表符(输出对齐很好用)
4.5 数据类型与变量
类型 | 关键字 | 占位符 | 定义示例 |
整数 |
|
|
|
超长整数 |
|
|
|
浮点数 |
|
|
|
双精度浮点 |
|
|
|
字符 |
|
|
|
字符串 |
|
|
|
注意:字符串数组长度 = 字符数 + 1。
"helloworld"共 10 个字符,还要留 1 位给结尾的结束符'\0',所以要定义char name[11]。
4.6 完整示例
小知识:
float有效精度约 6~7 位,123.123打印成123.123001是正常的二进制精度误差,不是 bug。
五、循环语句
C 语言有三种循环:for 循环、while 循环、do-while 循环。
5.1 for 循环
循环次数已知时首选:
5.2 while 循环
先判断,条件成立才执行:
5.3 do-while 循环
先执行一次循环体,再判断条件(循环体至少执行一次):
5.4 三种循环对比
循环 | 执行顺序 | 循环体最少执行次数 | 典型场景 |
for | 初始化 → 判断 → 执行 → 更新 | 0 次 | 次数已知 |
while | 判断 → 执行 | 0 次 | 次数未知,先判断 |
do-while | 执行 → 判断 | 1 次 | 至少做一次(如菜单) |
入门 C 语言的第一篇笔记:先一张表看懂各领域都用什么语言,再了解 C 语言的位置和特点,然后通过 hello world 认识 main 函数、printf 占位符、转义字符和常用数据类型,最后对比 for、while、do-while 三种循环。内容很基础,但地基要打牢。