随笔分类 -  C

摘要:解码C语言控制台颜色输出基本原理 控制台颜色输出使用ANSI转义序列,格式为:\033[属性代码m 常用颜色代码 字体颜色 #define RED "\033[31m"// 红色 #define GREEN "\033[32m"// 绿色 #define YELLOW "\033[33m"// 黄色 #define BLU 阅读全文
posted @ 2025-09-20 17:00 YouEmbedded 阅读(88) 评论(0) 推荐(0)
摘要:解码C语言模块化编程模块化设计原则 原则 说明 示例 高内聚 模块内部功能紧密相关 将数学计算函数集中到 math_utils 模块 低耦合 模块间依赖最小化(通过接口通信) 使用头文件声明接口,隐藏实现细节 单一职责 每个模块只解决一个特定问题 文件操作模块仅处理读写逻辑 接口清晰 明确模块对外暴露的 API 头文件 阅读全文
posted @ 2025-09-20 14:14 YouEmbedded 阅读(59) 评论(0) 推荐(0)
摘要:解码C语言宏预处理概述 基本概念 预处理是C语言编译过程的第一步,所有以#开头的指令都由预处理器处理,这些指令不属于C语言语法本身。 预处理指令类型 头文件包含:#include 宏定义:#define 宏取消:#undef 条件编译:#if, #ifdef, #ifndef, #else, #elif, #e 阅读全文
posted @ 2025-09-20 12:08 YouEmbedded 阅读(32) 评论(0) 推荐(0)
摘要:解码C语言位字段位字段的定义 位字段允许在结构体中按 位(bit) 为单位分配成员空间,用于紧凑存储布尔标志或小范围整数值,节省内存。常用于硬件寄存器操作、协议数据解析等场景。 位字段的语法 基本声明 struct 结构体名 { 类型 成员名 : 位宽; }; 类型:必须为整型(int、unsigned int、s 阅读全文
posted @ 2025-09-20 11:44 YouEmbedded 阅读(15) 评论(0) 推荐(0)
摘要:解码C语言复合数据类型之联合体与枚举联合体 (Union) - "多功能存储盒" 核心概念 联合体是一种特殊的数据类型,允许在相同的内存位置存储不同的数据类型。所有成员共享同一块内存空间。 内存模型演示 内存地址: 0x1000 0x1001 0x1002 0x1003 0x1004 0x1005 0x1006 0x1007 ┌─── 阅读全文
posted @ 2025-09-20 11:41 YouEmbedded 阅读(25) 评论(0) 推荐(0)
摘要:解码C语言复合数据类型之结构体结构体的定义与声明 结构体是一种 自定义数据类型,用于将多个不同类型的变量组合成一个整体。 定义结构体类型 struct Student { char name[20];// 字符数组成员 int age;// 整型成员 float score;// 浮点型成员 }; 统一 typedef 定义 确 阅读全文
posted @ 2025-09-19 20:57 YouEmbedded 阅读(22) 评论(0) 推荐(0)
摘要:解码C语言程序内存分布虚拟内存概念 核心概念:每一个进程运行时,操作系统都会为其分配一块虚拟内存空间(一般4G大小) 目的:让开发者不再关心物理内存的具体处理 效果:每个进程都认为自己拥有完整且独立的内存空间 布局图示 栈内存 (Stack) 存储内容: 命令行参数 各个函数的局部变量 函数调用的返回地址 内存特性: 地 阅读全文
posted @ 2025-09-19 16:21 YouEmbedded 阅读(24) 评论(0) 推荐(0)
摘要:解码C语言关键字数据类型关键字(12个) 基础类型 关键字 用途 示例 char 字符类型 char c = 'A'; int 整型 int num = 10; float 单精度浮点型 float f = 3.14f; double 双精度浮点型 double d = 2.718; void 无类型(函数/指针) 阅读全文
posted @ 2025-09-19 14:21 YouEmbedded 阅读(19) 评论(0) 推荐(0)
摘要:解码C语言函数函数基本概念 函数定义 概念:将功能的实现流程封装并隐藏细节,仅提供简洁接口,用户无需了解内部即可调用触发功能 作用:屏蔽功能实现细节以降低使用门槛、避免误改,提供统一调用方式减少重复编码,并执行逻辑完成功能目标、反馈结果。 函数组成要素 返回值类型:依函数功能确定,需在函数头明确指定 参数名:函数 阅读全文
posted @ 2025-09-19 11:49 YouEmbedded 阅读(14) 评论(0) 推荐(0)
摘要:解码C语言指针指针的定义与本质 指针是什么? 指针是一种 存储变量内存地址 的特殊变量。所有数据存储在内存中,每个内存单元都有唯一地址(编号),指针通过记录地址实现对数据的间接访问。 指针的核心作用 直接操作内存:动态内存分配、硬件编程等。 提高效率:传递大对象时避免复制(如结构体)。 灵活数据结构:实现链表、树 阅读全文
posted @ 2025-09-19 10:42 YouEmbedded 阅读(19) 评论(0) 推荐(0)
摘要:解码C语言数组一维数组 数组是相同类型数据元素的有序集合,通过下标(索引)访问元素,内存中连续存储。 数组名表示首元素地址,sizeof(arr) 返回整个数组的字节大小 核心特点 元素类型一致:所有元素必须为同一数据类型(如 int, float)。 固定大小:数组长度在声明时确定,静态数组无法动态调整。 下标 阅读全文
posted @ 2025-09-18 18:44 YouEmbedded 阅读(105) 评论(0) 推荐(0)
摘要:解码C语言九条语句选择结构 if 基本语法 if (条件表达式) { // 条件为真时执行的代码块 } else { // 条件为假时执行的代码块(可选) } 条件表达式的本质 条件表达式可以是任何返回整型值的表达式: 0 表示假(false)。 非0 表示真(true)。 示例: if (5) { ... }// 阅读全文
posted @ 2025-09-17 20:49 YouEmbedded 阅读(29) 评论(0) 推荐(0)
摘要:解码C语言运算符算术运算符 运算符 描述 示例 结果 + 加法 5 + 3 8 - 减法 5 - 3 2 * 乘法 5 * 3 15 / 除法 5 / 2 2 % 取模 5 % 2 1 ++ 自增 a++ a+1 -- 自减 a-- a-1 注意: 整数除法会截断小数部分 取模运算只能用于整数类型 C语言中前缀与后 阅读全文
posted @ 2025-09-17 20:28 YouEmbedded 阅读(63) 评论(0) 推荐(0)
摘要:解码C语言基础注释 类型 语法 规则与场景 示例 单行注释 // 注释内容 仅作用于行尾,适用于短注释(变量/单行代码说明) // 定义用户年龄变量int age;printf("输入年龄:"); // 提示用户输入 多行注释 /* 注释内容 */ 可跨多行,适用于长注释(函数文档/代码块逻辑) /** 函数名: 阅读全文
posted @ 2025-09-17 18:56 YouEmbedded 阅读(22) 评论(0) 推荐(0)
摘要:解码C语言环境搭建之Linux子系统与使用vscode连接子系统安装准备工作 查看当前系统版本确保高于16215.0 开启WSL Windows Subsystem for Linux(简称WSL)是一个为在Windows 10上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层。 安装步骤 微软商城Microsoft Store安装Ubuntu(本人 阅读全文
posted @ 2025-09-17 15:48 YouEmbedded 阅读(66) 评论(0) 推荐(0)