C语言基础13
今天是学习嵌入式相关内容的第十四天,以下是今日所学内容

1.结构体:
1.结构体类型定义
2.结构体变量的定义
3.结构体元素的访问
4.结构体的存储
内存对齐
结构体整体的大小必须为最大基本类型长度的整数倍
5.结构体作为函数参数
值传递


练习:定义一个学生的类型,封装一个函数GetStuInfo获得学生信息放入结构体中,
再封装一个函数PutStuInfo打印学生信息
指针传递

6.结构体数组:
struct student s[5];


2.共用体:
共用体所有成员变量共享同一片空间
内存大小端
方法1


放法2(共用体)

3.枚举:
1.枚举类型一般说明将来变量的值在给定的常量中选择其一作为它的值
2.枚举常量的值总是前一个枚举常量的值+1,第一个默认为0值
3.枚举常量默认为int类型,可以直接在程序中使用
用枚举完成车牌限号


4.位运算运算符:
& 按位与 与0得0
| 按位或 或1置1
^ 按位异或 相同为0 相异为1
~ 按位取反
>> 右移 右移n位 等价于 让该数 / 2^n
<< 左移 左移n位 等价于 让该数 * 2^n
按位异或实现数据交换:
a = a ^ b;
b = a ^ b;
a = a ^ b;
将变量的第n位置0:
num = num & ~(1 << n)
将变量的第n位置1:
num = num | (1 << n)


相关文章:
C语言基础13
今天是学习嵌入式相关内容的第十四天,以下是今日所学内容 1.结构体: 1.结构体类型定义 2.结构体变量的定义 3.结构体元素的访问 4.结构体的存储 内存对齐 结构体整体的大小必须为最大基本类型长度的整数倍 5.结构体作为函数参数 值传递 练习:定…...
【Java】Maven配置加载到全局
Maven配置加载到全局 <build><plugins><plugin><artifactId>maven-resources-plugin</artifactId><configuration><encoding>utf-8</encoding><useDefaultDelimiters>true</useDefaultDelimiters></configura…...
右手螺旋线定则
通电螺线管中的安培定则(安培定则二):用右手握住通电螺线管,让四指指向电流的方向,那么大拇指所指的那一端是通电螺线管的N极。...
2024 高级前端面试题之 React 「精选篇」
该内容主要整理关于 React 模块的相关面试题,其他内容面试题请移步至 「最新最全的前端面试题集锦」 查看。 React模块精选篇 1. 如何理解React State不可变性的原则2. JSX本质3. React合成事件机制4. setState和batchUpdate机制5. 组件渲染和更新过程6. Diff算法相…...
OSPF协议解析及相关技术探索(C/C++代码实现)
OSPF(开放最短路径优先)是一种用于自治系统(AS)内部的路由协议,它是基于链路状态算法的。OSPF的设计目的是为了提供一种可扩展、快速收敛和高效的路由解决方案。 OSPF概念和特点 概念 自治系统(AS&#…...
如何恢复已删除的照片?
在这篇综合文章中发现恢复丢失照片的有效且免费的方法。无论您使用的是智能手机、iPhone、Windows 计算机、Mac、SD 卡还是数码相机,我们都提供有关如何恢复已删除照片的分步说明。此外,学习一些有价值的技巧,以防止将来意外删除照片。 意外…...
VMware虚拟机安装macOS
VMware虚拟机安装macOS 文章目录 VMware虚拟机安装macOS先看效果一、准备工作①:镜像资源下载②:虚拟机③:安装macOS所必要的插件 二、开始安装①:创建新的虚拟机②:自定义硬件③:开启虚拟机 先看效果 一、…...
API管理协作工具:Apipost
相信无论是前端,还是后端的测试和开发人员,都遇到过这样的困难。不同工具之间数据一致性非常困难、低效。多个系统之间数据不一致,导致协作低效、频繁出问题,开发测试人员痛苦不堪。 API管理的难点在哪? 开发人员在 …...
GPT-SoVITS 本地搭建踩坑
GPT-SoVITS 本地搭建踩坑 前言搭建下载解压VSCode打开安装依赖包修改内容1.重新安装版本2.修改文件内容 运行总结 前言 传言GPT-SoVITS作为当前与BertVits2.3并列的TTS大模型,于是本地搭了一个,简单说一下坑。 搭建 下载 到GitHub点击此处下载 http…...
【教学类-34-02】20240130纸尺2.0 (A4横版5条,刻度25*5=125CM,有图案)
作品展示: 背景需求: 设计了纸尺的基本模板 【教学类-34-01】20240130纸尺1.0 (A4横版5条,刻度25*5125CM)-CSDN博客文章浏览阅读194次,点赞5次,收藏5次。【教学类-34-01】20240130纸尺1.0 &am…...
iText操作pdf
最近有个任务是动态的创建pdf根据获取到的内容,百度到的知识点都比较零散,官方文档想必大家也不容易看懂。下文是我做出的汇总 public class CreatePdfUtils {public static void create(){//准备File file new File("C:\\code\\base-project-back…...
关于SQLite 的下载与使用。配合python
win系统下: SQLite Download Page Precompiled Binaries for Windows sqlite-tools-win-x64-3450000.zip (4.77 MiB) 解压后,找个位置。然后设置环境变量指定位置。 可以手动建立.db文件。 也可以通过代码建立: 如下代码就是建立一个db文件。…...
java面向对象基础(面试)
一、面向对象基础 1. 面向对象和面向过程的区别 面向过程把解决问题的过程拆成一个个方法,通过一个个方法的执行解决问题。面向对象会先抽象出对象,然后用对象执行方法的方式解决问题。 2.创建一个对象用什么运算符?对象实体与对象引用有何不同? n…...
【C++修行之道】STL(初识list、stack)
目录 一、list 1.1list的定义和结构 以下是一个示例,展示如何使用list容器: 1.2list的常用函数 1.3list代码示例 二、stack 2.1stack的定义和结构 stack的常用定义 2.2常用函数 2.3stack代码示例 一、list 1.1list的定义和结构 list的使用频率不高&#…...
【环境配置】安装了pytorch但是报错torch.cuda.is_availabel()=Flase
解决思路:import torch正常,说明torch包安装正常,但是不能和gpu正常互动,猜测还是pytroch和cuda的配合问题 1.查看torch包所需的cuda版本 我的torch是2.0.1,在现在是比较新的包,需要12以上的cuda支持&…...
什么是模板方法模式?它的实现方式有哪些?
什么是模板方法模式?它的实现方式有哪些? 模板方法模式是一种行为型模式,它定义了一个操作中的算法骨架,而将算法的一些步骤延迟到子类中实现,使得子类可以不改变该算法结构的情况下重定义该算法的某些特定步骤。 模…...
java:实现查询MySQL数据库中的数据,并导出excel、pdf类型文档(超详细)
查询MySQL数据库中数据,导出excel、pdf类型文档 1.数据库表格 CREATE TABLE user (id int NOT NULL AUTO_INCREMENT COMMENT 编号,name varchar(255) DEFAULT NULL COMMENT 姓名,age int DEFAULT NULL COMMENT 年龄,addr varchar(255) DEFAULT NULL COMMENT 住址1…...
Java后端须知的前端知识
Java后端须知的前端知识 HTML (超文本标记语言) W3C标准 结构:HTML表现:CSS行为:JavaScript 快速入门 <html><head><title></title></head><body><font color"red&q…...
Servlet基础之URL匹配规则
文章目录 URL 匹配规则几个容易混淆的规则精确匹配路径匹配扩展名匹配缺省匹配注意事项 1:匹配规则不能混用注意事项 2:"\/\*" 和 "/" 含义并不相同 URL 匹配规则 几个容易混淆的规则 servlet 容器中的匹配规则既不是简单的通配&am…...
【面试真题】Javascript 实现多条件过滤数组
场景: 有这么一个数组 [{a,123,b:345,c:456,d:t12},{a,234,b:345,c:thf2,d:t12}], 现在希望能够通过逗号分隔搜索值的输入方式,从数组中过滤出模糊匹配的数组元素。 解析: 可以使用 JavaScript 的 filter 函数和 indexOf 函数来实现这个功…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...
stm32wle5 lpuart DMA数据不接收
配置波特率9600时,需要使用外部低速晶振...
水泥厂自动化升级利器:Devicenet转Modbus rtu协议转换网关
在水泥厂的生产流程中,工业自动化网关起着至关重要的作用,尤其是JH-DVN-RTU疆鸿智能Devicenet转Modbus rtu协议转换网关,为水泥厂实现高效生产与精准控制提供了有力支持。 水泥厂设备众多,其中不少设备采用Devicenet协议。Devicen…...
消息队列系统设计与实践全解析
文章目录 🚀 消息队列系统设计与实践全解析🔍 一、消息队列选型1.1 业务场景匹配矩阵1.2 吞吐量/延迟/可靠性权衡💡 权衡决策框架 1.3 运维复杂度评估🔧 运维成本降低策略 🏗️ 二、典型架构设计2.1 分布式事务最终一致…...
