
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
变量是用于存储数据的内存空间,其存储的值可以在程序运行过程中修改,使用前必须先定义,后使用。type name;// 示例:定义整型变量a,字符型变量chint a;char ch;type:变量类型,决定变量占用的内存空间大小和数据存储格式;name:变量名,属于 C 语言标识符,需遵循命名规范。常量是程序运行过程中值始终不变的量,属于 “只读” 数据,定义后不可修改。
本文围绕循环嵌套展开,从核心逻辑、实战案例到补充技巧,覆盖了C语言学习中高频的知识点:循环嵌套:核心是“外层控次数,内层控细节”,无新语法,重点是理清执行流程。实战案例:乘法口诀表、3种图形打印、cal命令实现,覆盖日常练习与笔试考点,代码可直接复用。补充技巧:VT控制码精准控制输出位置,goto语句实现循环嵌套快速跳转,提升代码灵活性。
📝【C语言数组核心用法精要】本文系统讲解嵌入式开发必备的数组知识:1️⃣数组本质是连续存储结构,通过首地址+偏移量高效访问;2️⃣字符数组与字符串关键区别在于'\0'结尾,需警惕越界风险;3️⃣多维数组是"数组的数组",以二维数组为例详解地址计算;4️⃣通过杨辉三角实战掌握二维数组初始化、递推和格式化输出技巧。重点提示:数组名是地址常量而非指针变量,嵌入式开发中要特别注意内存
结构体最后一个成员必须为数组,长度为0或1;0 长度数组不占用结构体本身内存空间,仅作为内存寻址标记;内存分配时,采用结构体大小+自定义数据长度方式,一次性分配连续内存;数组起始地址为额外扩展内存的起始位置,实现动态扩容。// 链表基础结点结构// 末端char data[0] 为柔性数组,实现变长存储// 前驱结点指针// 后继结点指针// 变长数据起始地址,不占用结构体空间// 链表管理结构体
本文系统讲解了C语言指针的核心知识点,包括指针运算符优先级(*p++、(*p)++等)、数组指针与指针数组的区别、函数指针的应用及回调机制。通过大量代码示例详细解析了指针操作、二维数组访问、字符串处理等常见场景,并提供了命令行参数处理、动态内存管理等实战练习。文章最后总结了指针相关的高频面试题,涵盖指针运算、内存管理、函数指针等校招必考内容,帮助读者深入理解指针原理并掌握实际应用技巧。
本文系统讲解了线性数据结构(顺序表、单链表、双链表、栈、队列)的核心概念与C语言实现,配套完整可运行代码。详细介绍了Linux下静态库(.a)与动态库(.so)的创建、使用及区别,包括编译命令、头文件编写和常见问题解决方法。内容涵盖数据结构基础、实验指导、笔试复习要点,以及Linux开发实战技巧,适合数据结构学习、期末复习和项目开发参考。所有代码均经过优化并附带详细注释,可直接编译运行,是掌握线性
本文为嵌入式 Linux 入门系列笔记,可以一起学习,一起成长!适合零基础初学者快速掌握等必备基础,为嵌入式开发打下系统使用根基。
摘要: 嵌入式裸机开发中,中断是ARM内核的硬件机制,允许外设打断CPU主程序以处理紧急事件,提升实时性与资源利用率。中断系统分为三层:外设(中断源)→中断控制器(如NVIC)→ARM内核。内核自动完成现场保存、跳转ISR、执行中断、恢复现场四步。EXTI控制器管理GPIO外部中断,支持19根中断线,需注意同一时刻每根线仅能绑定一个引脚。NVIC通过4bit优先级(抢占/响应优先级)实现中断调度,
本文为嵌入式 Linux 入门系列笔记,可以一起学习,一起成长!适合零基础初学者快速掌握等必备基础,为嵌入式开发打下系统使用根基。
本文系统复盘了STM32裸机开发第四天的核心内容,重点讲解了独立看门狗(IWDG)和USART串口通信两大模块。笔记从早测知识点切入,详细梳理了LED、按键和SysTick定时器的驱动原理。在IWDG部分,深入分析了看门狗的设计初衷、定时计算公式和密钥寄存器操作流程。USART章节则完整解析了串口通信的三大特性(串行、全双工、异步)、标准8N1帧格式时序,以及波特率匹配要求。最后通过课堂作业实践了







