12 2023 档案
摘要:简短不看版: 所有这些函数都从输入中读取一个字符并返回一个整数值。返回整数以容纳用于指示失败的特殊值。EOF值通常用于此目的。 getc(FILE *) ,参数可以指定文件,也可以是标准输入stdin。 getchar() 相当于 getc(stdin) getch() 和 getche() 从st
阅读全文
摘要:很多电子产品中都用电池供电,通过USB充电。当插上USB的时候,如果设备仍然需要工作,我们希望通过USB供电同时切断电池的供电。下面就介绍如何通过一个二极管、一个电阻和一个PMOS管来实现。 设计该种电路时的原则: 1. USB插入后,由USB供电,电池不供电。 2. USB插入后,USB的线路不能
阅读全文
摘要:1. 引脚定义: TEMP(引脚 1):电池温度检测输入端,实现电池温度检测功能。将TEMP 管脚接到电池的 NTC 传感器的输出端。如果TEMP 管脚的电压小于输入电压的45%或者大于输入电压的 80%,意味着电池温度过低或过高,则充电被暂停。如果 TEMP 直接接 GND,电池温度检测功能取消,
阅读全文
摘要:大纲: 1. 特殊的初始化方式 2. 获取子串 3. 与<algorith>中对应的成员函数 ”串“类型类似于数组类型(C语言的字符串就是字符数组)。但是有一点不同之处,就是串经常作为一个整体才有实际的”意义“,而数组每个单元都有其”意义“。 因此,“串”的操作中,很大部分是“串”的整体、局部为单元
阅读全文
摘要:练习链接:https://www.nowcoder.com/exam/test/76850250/detail?pid=27976983&examPageSource=Search 题目:A+B(4) 输入数据包括多组。 每组数据一行,每行的第一个整数为整数的个数n(1 <= n <= 100),
阅读全文
摘要:题目名称:63. 不同路径 II 链接:https://leetcode.cn/problems/unique-paths-ii/description/ 题目内容: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器
阅读全文
摘要:推荐先看文章: 《ESP32,使用gitee搭建 ESP-IDF 开发框架》 原文博主:工程师进阶笔记 乐鑫官方提供的文档,以及网上大部分ESP32环境搭建的文章,在搭建开发环境获取源码的时候,由于使用了国外知名的程序员交友平台github,往往会导致源码获取中断或失败,github访问失败是一些特
阅读全文
摘要:一般的vector 的初始化有两种方式,push_back和(n, val)方式 vector<int> vect; //一般方式 vect.push_back(10); vect.push_back(20); // Create a vector of size n with // all val
阅读全文
摘要:解答: 如果珂珂在 H 小时内吃掉所有香蕉的最小速度是每小时 k 个香蕉,则当吃香蕉的速度大于每小时 k 个香蕉时一定可以在 小时H 小时内吃掉所有香蕉,当吃香蕉的速度小于每小时 k 个香蕉时一定不能在 小时H 小时内吃掉所有香蕉。 由于吃香蕉的速度和是否可以在规定时间内吃掉所有香蕉之间存在单调性,
阅读全文
摘要:在C++中,动态数组通常使用new关键字进行分配。如果你想在创建动态数组时将其所有元素初始化为0,你可以使用value-initialization。 以下是一个示例,展示了如何创建一个动态数组并将其所有元素初始化为0: #include <iostream> int main() { const
阅读全文
摘要:朴素解法: #include <stdio.h> #include <string.h> int main(){ char c; char word[100][22]={'\0'}; int num=0,top=0; while((c = getchar())!=EOF){ if(c>='a'&&c
阅读全文
摘要:兼容芯片:CH582、CH583 代码以及固件 gitee 仓库:https://gitee.com/wenlilili/ch582m-bluetoothkbd 固件在其中 obj 文件夹中的 USBhidtoBLE.hex。 代码具体思路: 1. 阅读CH582M官方例程 HID-Keyboard
阅读全文
摘要:0. 先推荐引流一篇文章~~ 推荐文章:《动态规划之0-1背包问题(详解+分析+原码)》 写的很不错。但是动态数组的定义写得不如我下面: 这道题关键在于理解动态规划公式的定义: 可以定义一个二维数组dp[N][C+1],N是物品的种类,C是背包的承重(或者体积) dp[i][j]是这个数组的一个元素
阅读全文
摘要:大纲: 1. 什么是ble,ble与传统蓝牙的区别,ble与蓝牙4.0的区别 2. ble的基本概念:协议层(协议框架)、服务(Service)、特征(Characteristic)。什么是配对(pair)、通知(notify)。 介绍低功耗蓝牙 1. 什么是低功耗蓝牙? 图1 BLE介绍 低功耗蓝
阅读全文
摘要:今天第一次尝试用钢板焊板子(是一块ESP32物联网应用开发板)。焊好后检查了一下,就插上电脑测试,意外的是,出现了以下提示: 图1 usb设备所需电量超出该端口所能提供的电量 上网查原因,是USB接口有问题或者USB设备自己存在问题。 于是开始怀疑 USB 口的问题。板子上的USB口是 16线(12
阅读全文
摘要:自定义新Task的一般步骤 //做好使用TMOS的预备工作,调用以下函数: //0. 初始化好GPIO、串口等外设 //1. 初始化蓝牙: CH58X_BLEInit();//(注意,此处不能省略!!!这里分配了任务链表的内存,如果没有分配后续将无法正确执行) //2. 初始化时钟 while(!(
阅读全文
摘要:本文大纲: 1:工程文件夹架构的理解。 2:配置编译选项:头文件包含路径(相当于 gcc 的 -大i 选项), 库文件名(相当于gcc 的小 l 选项),库文件路径(相当于gcc 的 -大l 选项)。 一、工程文件夹架构的理解 插一句题外话:MounRiver Studio 的工程的概念与Keil
阅读全文
摘要:C++的to_string()函数 头文件 :#include<string> 功能:将数字常量转换为字符串。相当于C语言中的itoa()函数 参数:value 返回值:转换好的字符串 重载版本: 整数类型: std::string to_string(int/long/long long valu
阅读全文
摘要:0. 背景介绍 最近在刷牛客的题。经常遇到排序问题(如下图),经常有一个附加的规则:相同的数值的,按照录入的顺序排序。 可是C++的sort()的底层是快速排序,并不能保证相同数值的顺序不改变。所以最后我不得不自己写冒泡排序。(冒泡排序不改变相同数值的录入顺序) 1. stable_sort() 的
阅读全文
摘要:简短不看版: C语言中,不能进行 double a == double b 这样的运算。 另外,printf(".1f", &double) 的时候,数据输出不同时候,可能会不一样。 根本问题时float类型或者double类型的浮点数在计算机中不能精确储存。 单精度浮点型(float)存储方式 比
阅读全文
摘要:简短不看版: 通配符和正则表达式比较 (1)通配符和正则表达式看起来有点像,不能混淆。可以简单的理解为通配符只有*,?,[],{}这4种,而正则表达式复杂多了。 (2)*在通配符和正则表达式中有其不一样的地方,在通配符中*可以匹配任意的0个或多个字符,而在正则表达式中他是重复之前的一个或者多个字符,
阅读全文
摘要:简短不看版本: 1. scanf读入16进制数,scanf("%x", var); 或者scanf("%i", var); 2. 求平方根:double sqrt(double);或者 double pow(double, 0.5); 3. 求 int最大范围:包含头文件 <limits.h> 然后
阅读全文