【C】结构体的使用

一、结构体对齐 1. 默认对齐规则 1.1. 规则 数据类型自身的对齐值 int8_t / uint8_t 型:1 字节。 int16_t / uint16_t 型:2 字节。 int32_t / uint32_t / float 型:4 字节。 double 型:8 字节。 结构体的自身对齐值 其成员中自身对齐值最大的那个值。 数据成员、结构体的有效对齐值 自身对齐值和指定对齐值中较小者,即 有效对齐值 = min(自身对齐值,当前指定的对齐值)。 1.2. 示例 假如结构体的声明如下: 1 2 3 4 5 6 typedef struct { uint8_t a; uint16_t b; uint16_t c; uint32_t d; } struct_demo_t; 假设当前默认是 4 字节对齐,该结构体的大小是 12 Bytes,内存的使用空间如下: 1 2 3 4 5 6 7 +---+---+---+---+ | a | | b | +---+---+---+---+ | c | | +---+---+---+---+ | d | +---+---+---+---+ 代码测试(main.c): ...

October 27, 2025 · 9 min · 1746 words

【C】个人代码风格规范

1. 注释 所有的注释统一使用 /**/,除了一些特殊的注释以外。 单行注释: 1 /* 单行注释 */ 多行注释: 1 2 3 4 /** * 多行注释 1 * 多行注释2 */ 特殊的注释:用于表面一些待办事项,比如:TODO、FIXME、BUG、HACK。 1 2 // TODO 实现 xxx 功能 // FIXME 需修复 xxx 功能 特殊的注释:在第三方 SDK 中加入修改,并方便后续升级 SDK 时方便区分。 1 2 3 4 5 6 7 8 // [公司名] [人名] [时间] S : 实现 xxx 功能 ... // [公司名] [人名] [时间] E : 实现 xxx 功能 // Github Zeepunt 2025.10.01 S: 添加调试打印信息 ... // Github Zeepunt 2025.10.01 E: 添加调试打印信息 2.大括号 对于所有非函数的语句块,把起始大括号放在行尾,而把结束大括号放在行首。 ...

October 26, 2025 · 3 min · 459 words

【Blog】Hugo支持相对路径的图片

问题 当前的文章是使用 Typroa 编辑的,在 Typora 上可以显示图片,但是在 Hugo 中就无法显示图片。 Hugo 版本是 0.152.1 原因 当前的目录结构如下: 1 2 3 4 5 6 7 8 9 content └── article └── 使用Hugo和Github搭建个人博客搭建 ├── assets │ ├── 1761370605.png │ ├── 1761370606.png │ ├── 1761370607.png │ └── 1761370608.png └── 使用Hugo和Github搭建个人博客搭建.md 在 Typora 里面,我们如果要引用相对路径的图片,写法是这样的: 1 ![](assets/1761370607.png) 但如果此时使用 hugo server 在本地预览的话,你会发现这个图片的路径是: http://localhost:1313/article/使用hugo和github搭建个人博客搭建/使用hugo和github搭建个人博客搭建/assets/1761370607.png。 可以发现,Hugo 是将 xxx.md 是当作一个目录去看待的。 解决方案 我们应该将 xxx.md 改为 index.md,只有这样,Hugo 才能将这个目录识别为 Page Bundle。 ...

October 25, 2025 · 1 min · 73 words

【Blog】使用Hugo和Github搭建个人博客搭建

一、工具安装 1. Go 这里安装的 Go 版本为 1.25.3,官网地址:Go。 安装过程:略。 安装完成后,查看 Go 版本: 1 2 $ go version go version go1.25.3 windows/amd64 2. Hugo Hugo 是一个用 Go 写的静态网站生成器。 这里安装的是标准版的 Hugo。 1 2 3 4 5 6 $ go install github.com/gohugoio/hugo@latest go: downloading github.com/gohugoio/hugo v0.152.1 ... $ hugo version hugo v0.152.1 windows/amd64 BuildDate=unknown 3. Hugo 的常用命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 # 创建网站 $ hugo new site <网站名> # 启动本地服务器 $ hugo server # 启动本地服务器 (包含草稿文章) $ hugo server -D # 创建文章 $ hugo new <文章名称> # 生成静态网站 $ hugo 二、创建网站 1. 创建流程 基本创建流程如下: ...

October 25, 2025 · 4 min · 807 words