volatile 关键字
发表于|更新于|基础语法
|浏览量:
volatile 关键字
⚠️ 待完善
本笔记尚未添加内容。
基本概念
volatile关键字用于声明变量可以被意想不到地改变,告知编译器不要对该变量进行优化。
典型应用场景
- 硬件寄存器:映射到内存的硬件寄存器,其值可能随时被硬件改变
- 多线程共享变量:被多个线程访问和修改的变量
- 中断服务程序修改的变量:在中断中修改而在主程序中读取的变量
基本用法
1 | volatile uint8_t *status_reg; |
文章作者: liu
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 lbq开发日志!
相关推荐
2026-04-30
const 关键字
const 关键字关键字const用来定义常量,如果一个变量被const修饰,那么它的值就不能再被改变。 const 的优点与预编译指令 #define 相比,const修饰符有以下优点: 类型检查:预编译指令只是对值进行简单的替换,不能进行类型检查 保护作用:可以保护被修饰的东西,防止意外修改,增强程序的健壮性 常见用法12345678910// const 修饰变量const int MAX_COUNT = 100;// const 修饰指针const char *str; // 指针指向的内容不可变char * const str; // 指针本身不可变const char * const str; // 两者都不可变// const 修饰函数参数void func(const char *input);
2026-04-30
extern 关键字
extern 关键字 ⚠️ 待完善本笔记尚未添加内容。 基本概念extern关键字用于声明外部变量或函数,表示该变量或函数在其他文件中定义。 基本用法1234567// 在一个文件中定义int g_system_ready = 0;// 在另一个文件中引用extern int g_system_ready;extern void system_init(void); 注意事项 extern只是声明,不分配存储空间 用于跨文件共享全局变量和函数
2026-04-30
static 关键字
static 关键字 ⚠️ 待完善本笔记尚未添加内容。 基本概念static关键字在C语言中有两种用途,取决于其修饰的对象类型。 修饰局部变量 改变变量的生命周期为整个程序运行期间 限制变量的作用域在声明的函数内部 变量只被初始化一次 1234void counter(void) { static int count = 0; count++;} 修饰全局变量/函数 限制变量或函数的作用域在当前文件内 实现信息隐藏 12static int internal_value;static void helper_function(void);
2026-04-30
union 关键字
union 关键字 ⚠️ 待完善本笔记尚未添加内容。 基本概念union(联合体)是一种特殊的数据类型,所有成员共享同一块内存空间。 基本用法12345678910111213typedef union { uint32_t value; struct { uint8_t byte0; uint8_t byte1; uint8_t byte2; uint8_t byte3; } bytes;} register_value_u;register_value_u reg;reg.value = 0x12345678;reg.bytes.byte0; // 访问单个字节 典型应用 内存复用 字节序转换 协议解析
2026-04-30
typedef 关键字
typedef 关键字 ⚠️ 待完善本笔记尚未添加内容。 基本概念typedef用于为现有类型创建新的名称(别名)。 基本用法12345678910111213// 为简单类型创建别名typedef uint8_t u8;typedef uint32_t u32;// 为结构体创建别名typedef struct { int x; int y;} point_t;// 为函数指针创建别名typedef void (*callback_t)(int);typedef int (*handler_t)(uint8_t*, size_t); 典型应用 类型名称简化 跨平台类型定义 函数指针类型定义
2026-04-30
Doxygen 简介
Doxygen 简介1. Doxygen 是什么Doxygen 是一个程序文档生成工具,可以将代码中的注释转换成说明文档(API 参考手册),从而减少程序员手工整理文档的时间。 前提是:代码注释需要遵循 Doxygen 的规则书写,才能被正确识别和转换。 2. 支持的语言与输出格式2.1 可处理的语言 C/C++ Java Objective-C IDL 等 2.2 可生成的文档格式 HTML XML LaTeX RTF 等 2.3 常见衍生输出 HTML 可以打包成 CHM LaTeX 可以借助工具生成 PS / PDF 3. 安装(Windows)3.1 安装列表与下载地址 Doxygen 下载地址:http://doxygen.nl/files/doxygen-1.8.15-setup.exe HTML Help(用于生成 HTML 格式的 help 文件 / CHM 相关) 下载地址:http://go.microsoft.com/fwlink/p/?linkid=14188 Graphviz(dot...
公告
This is my Blog