嵌入式学习day12
每日面试题
static 关键字在 全局变量、局部变量、函数的区别?
①全局变量+static:改变作用域,改变(限制)其使用范围。
只初始化一次,防止在其他文件单元中被引用。全局变量的作用域是整个源程序,在各个源文件中都是有效的,而加了静态后的全局变量的作用域仅限于一个源文件中。
②局部变量+static:普通的局部变量是在函数或方法执行完毕后释放存储空间,而静态局部变量在程序开始执行时分配存储空间,直到程序结束才释放。这意味着即使函数或方法执行完毕,静态局部变量的值仍然会保留,并在下一次函数调用时保持其值。
③普通函数+static:作用域不同,仅在本文件。
程序的内存分配
- 栈区:由编译器进行管理,自动分配和释放,存放的是函数调用过程中的各种参数,局部变量,返回值以及函数返回地址。
- 堆区:用于程序动态申请分配和释放空间,malloc和free,程序员申请的空间在使用结束后应该释放,否则程序自动收回。
- 全局(静态)存储区:分为DATA(已经初始化),BSS(未初始化)段,DATA段存放的是全部变量和静态变量;BSS(未初始化)存放未初始化的全局变量和静态变量。程序运行结束后自动释放,其中BSS(全部未初始化区)会被系统自动清零。
- 文字常量区:存放常量字符串,程序结束后由系统释放。
- 程序代码段:存放程序的二进制代码。
每日算法
给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表没有交点,返回 null 。
class Solution {
public:ListNode* getIntersectionNode(ListNode* headA, ListNode* headB) {ListNode* p = headA;ListNode* q = headB;int lenA = 0;int lenB = 0;while (p != NULL) {lenA++;p = p->next;}while (q != NULL) {lenB++;q = q->next;}p = headA;q = headB;if (lenA < lenB) {swap(lenA, lenB);swap(p, q);}int gap = lenA - lenB;while (gap--) {p=p->next;}while (p != NULL) {if (p == q)return p;p = p->next;q = q->next;}return NULL;}
};
相关文章:
嵌入式学习day12
每日面试题 static 关键字在 全局变量、局部变量、函数的区别? ①全局变量static:改变作用域,改变(限制)其使用范围。 只初始化一次,防止在其他文件单元中被引用。全局变量的作用域是整个源程序ÿ…...
【Leetcode 42】 接雨水-单调栈解法
基础思路: 维持栈单调递减,一旦出现元素大于栈顶元素,就可以计算雨水量,同时填坑(弹出栈顶元素) 需要注意: 单调栈通常保存的是下标,用于计算距离 public static int trap2(int[…...
Python 贪吃蛇
文章目录 效果图:项目目录结构main.pygame/apple.pygame/base.pygame/snake.pyconstant.py 效果图: 项目目录结构 main.py from snake.game.apple import Apple # 导入苹果类 from snake.game.base import * # 导入游戏基类 from snake.game.snake im…...
计算机网络 2.4差错检验与校正
第四节 差错检验与校正 一、认识检验与校正 1.差错形成原因 内部因素(随机错):噪声脉冲、脉动噪声、衰减、延迟失真等。 外部因素(突发错):电磁干扰、太阳噪声、工业噪声等。 2.差错控制编码分类&#…...
uniapp遍历数组对象的常见方法
在 UniApp 中,遍历数组对象的方法与在普通 JavaScript 中是相同的。UniApp 是一个使用 Vue.js 开发所有前端应用的框架,因此你可以使用 Vue.js 和 JavaScript 的语法来遍历数组对象。 以下是一些常见的遍历数组对象的方法: 使用 for 循环 …...
Milvus向量数据库(一)Milvus存储byte[]类型源向量数据
两种路线: 第一种是把byte[]转换为List< float >,然后存储到Milvus的floatVector中第二种是把byte[]转换为ByteBuffer,然后存储到Milvus的BinaryVector中 步骤: 我先用的是第一种,但是在转换float过程中&…...
Jupyter Notebook魔术命令
Jupyter Notebook是一个基于网页的交互式笔记本,支持运行多种编程语言。 Jupyter Notebook 的本质式一个Web应用程序,便于创建和共享文学化程序文档,支持实现代码,数学方程,可视化和markdown。用途包括:数据…...
python基础---生成器
生成器 这个老师的课 这个老师的网页 获取系列有规律但是个数不确定的数据 使用迭代器的时候可以使用一个不会产生异常的迭代器, 实际记录的是生成的数据的方式, 不是实际的数据 使用迭代器的时候这一个规则的改变不方便, 需要加一个专门的方法 还有就是如果需要大量的数据,…...
wangEditor 富文本详解
前言:wangEditor 官网 。本文档讲解 wangEditor 在 vue3 中的使用。 一:快速开始 1. 安装 需要安装 wangeditor/editor、wangeditor/editor-for-vuenext 两个依赖 # 安装 editor npm install wangeditor/editor # or yarn add wangeditor/editor # o…...
文献速递:深度学习医学影像心脏疾病检测与诊断--从SPECT/CT衰减图中深度学习冠状动脉钙化评分提高了对重大不良心脏事件的预测
Title 题目 Deep Learning Coronary Artery Calcium Scores from SPECT/CT Attenuation Maps Improve Prediction of Major Adverse Cardiac Events 从SPECT/CT衰减图中深度学习冠状动脉钙化评分提高了对重大不良心脏事件的预测 01 文献速递介绍 低剂量非门控CT衰减校正&am…...
Java多线程:常见的线程的创建方法及Thread类详解
目录 一.并发编程相关概念 线程与进程 多线程 Java中线程的状态 二.线程的创建方法 方法一:继承Thread类 方法二:实现Runnable接口 其他方法 三.Thread类详解 Thread常见构造方法 Thread常见属性 Thread常见方法 start() 与 run() sleep(…...
一招搞定生产管理
劳动力成本上升,原材料价格上涨,企业生产成本逐年增加,市场竞争越来越激烈,传统的中小制造企业面临着巨大的挑战。 企业的数字化转型如今成为炙手可热的高频词语,越来越多的中小制造企业已经开始上云,实践SaaS模式的生产管理系统…...
学习CSS3,实现红色心形loading特效
试想一下,如果你的网站在加载过程中,loading图由一个老旧的菊花转动图片,变为一个红色的心形loading特效,那该有多炫酷啊。 目录 实现思路 初始化HTML部分 延迟动画是重点 设定动画效果 完整源代码 最后 实现思路 每个…...
深度学习之基于Matlab神经网络的活体人脸和视频人脸识别系统
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 人脸识别技术作为生物识别技术的一种,近年来得到了广泛的关注和应用。与传统的身份认证方…...
充电桩测试:负载箱的重要性
随着电动汽车的普及,充电桩的需求也在不断增加。为了保证充电桩的安全、稳定和高效运行,对其进行严格的测试是必不可少的。在充电桩测试过程中,负载箱作为一种重要的测试设备,对于评估充电桩的性能和可靠性具有重要意义。 负载箱可…...
贪心算法、Dijkstra和A*类路径搜索算法
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录 系列文章目录前言系列文章目录前言1.贪心算法、Dijkstra和A*类路径搜索算法(1)greedy best frist search贪心算法(仅仅考虑启发式代价)1.核心思想2.构造启发式猜…...
Debian是什么?有哪些常用命令
目录 一、Debian是什么? 二、Debian常用命令 三、Debian和CentOS的区别 四、Debian和CentOS的优缺点 五、Debian和CentOS的运用场景 一、Debian是什么? Debian是一种流行的开源Linux操作系统。 Debian是一个以Linux内核为基础的操…...
万兴PDF专家 PDFelement Pro v10.3.8 破姐版!
🧑💻万兴PDF专家 PDFelement Pro v10.3.8 破姐版 (https://docs.qq.com/sheet/DRVVxTHJ3RXJFVHVr)...
Ubuntu22.04 私钥登录
1. 背景 以前一直使用秘钥登录Linux,最近新装了一台Ubuntu 22.04,照旧部署公钥,使用私钥登录,结果SecureCRT 登录没有问题,使用Xshell登录一直报“所选的用户密钥未在远程主机上注册,请再试一次”。然后各种试&#x…...
Java_JVM_JVMs
JVM 官方文档说明文档目录 官方文档 JVM Specification 说明 以Java SE 17为标准 文档目录 2:JVM 结构 class文件数据类型 基本数据类型引用数据类型 运行时数据区 栈帧 其他内容 对象的表示浮点数运算特殊方法 初始化方法【实例、类】多态方法 3ÿ…...
Conforme配置管理范式:类型安全与约定优先的实践指南
1. 项目概述:Conforme,一个被低估的配置管理范式在软件开发和系统运维的日常里,我们总在和“配置”打交道。数据库连接字符串、API密钥、功能开关、环境变量……这些看似零散的信息,却像乐谱上的音符,共同决定了应用如…...
终极Zotero插件管理指南:如何一键安装数百个学术研究工具
终极Zotero插件管理指南:如何一键安装数百个学术研究工具 【免费下载链接】zotero-addons Zotero Add-on Market | Zotero插件市场 | Browsing, installing, and reviewing plugins within Zotero 项目地址: https://gitcode.com/gh_mirrors/zo/zotero-addons …...
IDEA(2021.3.2)模块右侧Maven中不显示Dependencies问题
前言:今天在B站大学上想学点东西的时候,发现了这个问题,根目录中有两个模块,分别是01,02我嫌麻烦就复制了一份为03,在刷新maven的过程中报错(主要就是不展示Dependencies)然后百思不得其解&…...
GitHubCopilot与Gemini3.1Pro协同开发实战
在 2026 年,AI 编程工具的差异已经从“谁能写代码”转向“谁能把代码写对、写稳、写得可维护”。很多团队开始采用“双引擎协作”:GitHub Copilot 负责快速生成与代码补全,而 Gemini 3.1 Pro 负责更强的推理、架构级建议、测试策略与长上下文…...
BLheli电调硬件避坑指南:搞懂MOS驱动逻辑,别让固件和电路“打架”
BLheli电调硬件设计深度解析:从MOS驱动逻辑到实战排错 在无刷电机控制领域,BLheli固件因其出色的性能和开源特性成为众多开发者的首选。但当你兴奋地将精心设计的硬件与下载的固件结合时,电机却纹丝不动,甚至冒出缕缕青烟——这种…...
告别虚拟机卡顿:在Windows 11的WSL2里为树莓派4B编译Automotive Grade Linux镜像
告别虚拟机卡顿:在Windows 11的WSL2里为树莓派4B编译Automotive Grade Linux镜像 嵌入式开发者在Windows平台上常面临一个尴尬处境:项目需要Linux环境,但物理机切换或虚拟机性能损耗让人头疼。去年我在为某车载HMI项目构建AGL镜像时ÿ…...
3分钟快速上手:免费AI语音修复工具VoiceFixer终极指南 [特殊字符]
3分钟快速上手:免费AI语音修复工具VoiceFixer终极指南 🎤 【免费下载链接】voicefixer General Speech Restoration 项目地址: https://gitcode.com/gh_mirrors/vo/voicefixer 你是否曾经因为录音质量不佳而烦恼?会议录音充满杂音、珍…...
Hotkey Detective:5分钟找到偷走你快捷键的“元凶“
Hotkey Detective:5分钟找到偷走你快捷键的"元凶" 【免费下载链接】hotkey-detective A small program for investigating stolen key combinations under Windows 7 and later. 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 你…...
如何将微信聊天记录永久保存?WeChatMsg完整免费指南帮你实现数据自主权
如何将微信聊天记录永久保存?WeChatMsg完整免费指南帮你实现数据自主权 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_T…...
Recaf Java字节码编辑器:快速上手与指令搜索实战指南
Recaf Java字节码编辑器:快速上手与指令搜索实战指南 【免费下载链接】Recaf The modern Java bytecode editor 项目地址: https://gitcode.com/gh_mirrors/re/Recaf Recaf是一款现代化的Java字节码编辑器,它简化了Java程序分析的复杂性ÿ…...
