- 博客(100)
- 资源 (47)
- 收藏
- 关注
原创 小于n的最大数 - 贪心算法 - C++
给定一个整数n,并从1~9中给定若干个可以使用的数字,根据上述两个条件,得到每一位都为给定可使用数字的、最大的小于整数n的数,例如,给定可以使用的数字为 {2,3,8} 三个数:给定 n=3589,输出3388;给定 n=8234,输出8233;
2025-01-05 16:50:58
408
原创 SPI_WRITE宏解析
define GET_SPI_WRITE_MACRO(_1, _2, _3, NAME, …) NAME中:_1, _2, _3 是 GCC 提供的参数扩展,它们会展开为传递给宏的第一个、第二个和第三个参数;是一个可变参数宏的特殊标识符,它用于在宏定义中展开传递给宏的参数。NAME 是 SPI_WRITE_0,_3 代表 SPI_WRITE_1。进一步展开:SPI_WRITE_1(0x70, 0x01, 5)如果SPI_WRITE(0x70, 0x01);本例中,NAME此时是SPI_WRITE_1,
2024-12-05 11:32:43
236
原创 of_get_named_gpio()函数解析
of_parse_phandle_with_args函数中,gpio1的cells长度为2,即后面跟的两个一起是一个整体。根据注释例子:list节点下的信息形成一个表,第一个元素中,#list-cells表示其后面跟着多少个元素是一个整体。引用的文章讲解的很清晰了,这里不再展开。继续调用of_get_named_gpiod_flags,返回一个struct gpio_desc。今天做试验,发现节点中的信息读不到,就想看一下,这函数是否递归搜索。继续调用of_get_named_gpiod_flags。
2024-03-31 22:34:18
3823
2
原创 Linux设备树详细学习笔记
一般.dtsi 描述板级信息(也就是开发板上有哪些 IIC 设备、SPI 设备等,由芯片厂提供),.dts 描述 SOC 级信息(各个外设控制器信息、那个iic上挂哪个传感器等),这样写的好处是,将芯片平台与下游odm分开,通过dts拓展原始基础dtsi。比如,要在iic总线上挂载一个六轴设备,soc厂商可能给一个例程,也可能不给,就要自己修改和添加。和 C 语言一样,设备树也支持头文件,设备树的头文件扩展名为.dtsi,也可以引用 C 语言中的.h 文件,甚至也可以引用.dts 文件,例如。
2023-09-10 17:59:38
650
原创 Linux下 /sys/class 一些操作
dev下面有很多节点,每一个节点代表一个设备,/dev目录下面是按物理器件进行分类;而/sys/class下面的更多是按功能抽象出来的。class_create执行后,sys/class下面会生成一个NEWCHRLED_NAME的路径,但此时,该路径下为空。将dev设备与class相关联,该函数执行后,NEWCHRLED_NAME路径下出现。my_att_store和my_att_show分别对应应用层对属性文件的读写。在删除设备的时候自动删除该节点,无需在exit函数中特意删除。
2023-09-04 22:07:37
1933
原创 VScode SSH无法免密登录
修改vim /etc/ssh/sshd_config配置中,StrictModes no,然后重启ssh:service sshd restart,就可以免密登录了。如果StrictModes为yes必需保证存放公钥的文件夹的拥有与登陆用户名是。Linux服务器:2222是我们指定的端口,可以是1234等。我主要参考两篇博客,根据debug信息,不断搜索问题所在。如果此时还要求输入Ubuntu的密码,则没有配置成功。连不上需要找到问题原因,看ssh的 log。如果配置成功后,windows输入。
2023-09-02 11:00:06
1304
原创 栈踩踏实验
data:已经初始化的全局变量/局部静态变量.bss:未初始化的全局变量/局部静态变量.got.plt:全局偏移量表,保存全局变量引用的地址.rodata:只读数据text:代码节,保存了程序执行的代码.init:程序初始化和终止的代码stack:栈,向低地址生长heap:堆,向高地址生长data:读写权限的数据段code:具有执行权限的数据段。
2023-05-28 23:21:42
987
原创 编译内核驱动为模块,没有指定架构的时候出现错误
跨平台需要交叉编译,命令展开后make -C /home/alientek/linux/linux-imx-4.1.15-2.1.0-g3dc0a4b-v2.7 M=/home/alientek/linux/driver/broaddriver/01_chrdevbase modules 并没有指定编译架构。因为直接使用的历程,并且跳过了一些内容,所以猜想不是代码抄错了,是配置原因。将makefile文件改为。
2023-05-21 21:44:53
257
原创 48430 Assessment Task 2: Assignment 员工管理系统
48430 Assessment Task 2: Assignment 员工管理系统。
2022-10-07 21:30:00
429
原创 makefile入门_包含动态静态库的基础项目_2
一个入门级makefile项目,包含基本知识点、静态可动态库、变量等知识点,最终目标是编译一个工程。
2022-07-15 21:55:46
499
原创 makefile入门_包含动态静态库的基础项目_1
一个入门级makefile项目,包含基本知识点、静态可动态库、变量等知识点,最终目标是编译一个工程。
2022-07-14 21:35:37
180
原创 CPT106 C++ Programming and Software Engineering II
一共七个作业题目,主要考察c++面向对象,三个版本,vs2019写的,全部满分完美。题目一:Int[] union_Array (int a[], int lenA, int b[], int lenB);题目二:student 类及操作;题目三:student 类及操作(链表);题目四:char *findC (char const *source, char const *obj);题目五:Circle类;题目六:最小二乘法拟合;题目七:在线商品管理;包含三个以上版本代码,不怕查重...
2022-05-30 09:15:45
554
原创 c++ 快速内存池
/*编写一个内存池,在运行期间不进行动态内存分配为了实现快速的内存分配,通常一个内存池分配器使用预定义大小的块。这个想法类似于隔离列表,但是块的确定更加快速。池分配器使用块(池)和每个块中的小块的概念进行操作。每个块都有预定的大小,并对对象头进行编码,其中存储着元信息。为分配器或收集器的目的所需。由于大小是预定义的,我们不需要在头中存储它在头中,而只能保持对下一个对象的引用。特点。参数化的池大小应考虑内存对齐在初始化过程中进行块分配(或者在编译过程中更好)。块的内
2022-05-25 21:30:00
175
原创 求两个对称矩阵之和
已知a和b两个n×n阶的对称矩阵在输入时对称。输入下三角元素,存入一维数组,计算和与积。#include <iostream>#define MAX_LEN 1000using namespace std;//upper triangular matrix int acc(int i, int j,int& n) { if (i < j) swap(i, j); return i * (i + 1)/2 + j;}void add(in
2022-05-22 22:00:00
875
原创 GPIO and Interrupt C Programming for virtual Piano using Keil simulator
stm32 GPIO中断仿真钢琴按键本题相当于一个38译码器。PA0作为外部中断触发引脚,PA1-3作为LINE数据总线,PB0-7作为输出。实现了keil中的仿真分析。
2022-05-17 21:53:48
291
1
原创 arduino期末考试题
Q1微处理器是一个单芯片CPU,而微控制器则在一块集成电路芯片中集成了CPU和其他电路,构成了一个完整的微型计算机系统。除了CPU,微控制器还包括RAM、ROM、串行接口、并行接口,计时器和中断调度电路等。微控制器芯片有差异:Uno基于ATmega328P芯片而Micro是一种基于ATmega32U4的微控制器板;引脚资源有差异:uno有14个数字输入/输出引脚(其中6个可作为PWM输出),6个模拟输入,micro有20个数字输入/输出引脚(其中7个可作为PWM输出,12个作为模拟输入);mic....
2022-05-16 13:45:00
2469
原创 实验八:文件处理
题目五金店的老板,需要保持库存,可以告诉你你有什么不同的工具,你有多少的手,每一个的成本。(a)编写一个程序,初始化顺序文件hardware.txt,关于每个工具允许您输入的数据,允许您列出所有工具,允许您删除不再拥有的工具的记录,并允许您更新文件中的任何信息。工具识别号应为记录号。使用以下信息启动文件:(b)重复(a),但这次使用的是随机访问文件hardware.dat。您应该为上述记录创建一个类,并为每条记录创建一个对象。在创建随机访问文件时,需要创建100条空记录。代码// Console
2022-05-14 21:31:36
150
原创 多线程实现字符串翻转
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <pthread.h>//https://www.cnblogs.com/chenjx85/p/10574752.htmlint rows=0,idx=1,len;pthread_mutex_t mut = PTHREAD_MUTEX_INITIALIZER;void* my_func(void* args) {..
2022-05-13 22:20:21
156
原创 二叉树表示数学表达式_c++_上海科技大学作业_Problem 3. Expression
上海科技大学作业,考察面向对象c++,思路是对的,然而测试都没有通过。
2022-05-06 08:00:00
332
原创 黑白球作业03
题目代码#include <stdio.h>double C(int m, int n) { double ret = 1.0; for (int i = 1; i <= n; i++) { ret *= (double)i; } for (int i = 1; i <= m; i++) { ret /= (double)i; } for (int i = 1; i <= (n-m); i++) { ret /= (double)i; } re
2022-05-05 09:46:03
119
原创 计算机系统作业
#include <stdio.h>#include <stdlib.h>#include <string.h>//////////////////////第二题的///////////////int tadd_ok(int x, int y) //判断两个数相加是否溢出,溢出就返回0{ int sum = x + y; if(x > 0 && y > 0) { if(sum <..
2022-02-20 16:48:36
504
原创 实现Distance类 c++ oop
面向对象的考试题#include <iostream>#include <ctime>using namespace std;class Distance {private: int feet, inch;public: Distance() { feet = 0; inch = 0; } Distance(int input_inch) { feet = input_inch / 12;
2022-02-16 00:45:00
264
原创 c++ string类的实现 手撕string类
要求要求通过动态数组实现,不能分配静态定长内存。要求实现如下函数要求事情内存时不能使用new华为delete,new char[n_bytes] → new_char_array(int n_bytes), and delete[] p → delete_char_array(char *p)。实现String.cpp#include "String.h"int String::strlen(const char *s) { int len = 0; for (;
2022-02-11 01:00:00
641
原创 c++继承多态虚函数例题
写一个抽象类Pet,里面有3个纯虚函数void setName(string name),string getName();void play();写一个类Animal,里面有保护类型的成员变量string name,一个带参数的构造函数,2个成员函数,void walk),void eat()写一个类Cat,要求同时继承题2,3中的类。写一个类Dog,要求同时继承2,3中的类。自己设计编写代码,生成Cat,Dog对象,并且要求体现出多态。// ConsoleApplication1.cpp .
2022-01-18 10:00:00
679
原创 C++ 纯虚函数和抽象类 实现shape类
#include <iostream>using namespace std;const double PI = 3.1415926;class Shape{public: virtual double getArea() const = 0; Shape() {} ~Shape() {}};class Rectangle :public Shape {public: Rectangle() { length = 0.0; width = 0.0; } ~Rectan.
2022-01-12 13:30:00
1076
原创 基于 c++ 语言的简易 vim 编辑器
问题描述现要求你设计出一个基于 c/c++ 语言的简易 vim 编辑器。基本要求在命令行模式下,实现 vim 的一些基本功能,必须实现的功能包括以下内容:编辑器有两个模式,normal 和 insert 模式,其中 normal 为默认模式normal 模式下,所有输入将被视为指令,其中以符号开头的指令将被打印在窗口缓冲区的最下方,按回车结束,执行指令读取文本文件并显示,指令为:open filename,其中 filename 为打开的文件名,且当前模式为默认模式 normal保存文本
2022-01-10 23:24:11
534
原创 用C语言实现猜单词的小游戏
该程序将从单词库文件中随机地选择一个单词,显示该单词的中文名,用户输入对应的英文单词。系统显示猜中的字母,用户可以最多有8次猜测的机会。如果用户在规定次数中内猜中了该单词,则该次游戏用户胜利,否则用户失败。用户可以选择是否继续重复进行游戏。主要基本功能有:开始猜单词、榜单(记录每个用户历史记录,并排名次)、单词管理(对单词库中的单词进行增删改)。
2022-01-06 18:01:47
5859
2
原创 基于链表的模拟21点游戏 C语言
题目效果代码game.c:是游戏的逻辑#include <stdlib.h> // for drand48#include <stdio.h>#include <string.h>#include "card.h"#define SHUFFLE_TIMES 7const char suits[4]={'C','D','H','S'};/* This main() is constructed just for testing purposes. S
2021-12-23 21:29:07
2158
原创 多线程+链表模拟RR调度算法
程序还有点小bugmian.c#include <stdio.h>#include <stdlib.h>#include <stdbool.h>#include <pthread.h>#include <semaphore.h>#include <unistd.h>#include <sys/types.h>#include <sys/time.h>#include <stdlib.h.
2021-12-19 22:08:21
516
一个对字符串处理的程序,要求能够识别字符串中大写字母、小写字母以及数字的个数并输出,识别“L”、“o”、“v”、“e”四个字符的
2022-06-15
c++高级应用习题.zip
2022-06-13
学生成绩管理——c++.zip
2022-06-07
CPT106 C++ Programming and Software Engineering II.zip
2022-06-04
Lab 3–GPIO SysTick and Interrupt C Programming for a real time
2022-06-04
Homework 7_Knowledge items of C++_(part 2).zip
2022-06-02
Programmin Homework 0: Cord Lab 二叉树字符串
2022-05-27
基于链表餐厅预测_墨尔本大学_COMP10002 Foundations of Algorithms
2022-05-24
TCS34725颜色识别+步进电机定时定量旋转.zip
2022-05-19
Lab 2 GPIO and Interrupt C Programming for virtual Piano using K
2022-05-17
完成具有三种字符串格式处理功能的文本处理器_vs2019_包含报告
2022-05-14
位图混合_C语言_codeblock.zip
2022-05-11
LM Advanced Mathematical Finance Module C++ LECTURE 3
2022-04-29
scrolling display_noPI.zip
2022-04-21
程序设计分组训练_实验2_实验3_实验4_北交大
2022-04-18
基于 c++ 语言的简易 vim 编辑器.rar
2022-01-10
停车场管理系统 C语言 vs2019.rar
2021-12-04
guess_letter_猜字母_codeblock_windows.rar
2021-12-03
C语言 战舰游戏 Battleship codeblock windows .rar
2021-12-03
树莓派3B+sense_hat库.rar
2021-12-03
RSA加密算法 Linux C语言.rar
2021-11-22
C语言 基于链表的日历格式解析 及指定格式输出.rar
2021-11-17
FIFO LRU OPT内存模拟实验_c++.rar
2021-11-04
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人