自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 Linux下的GPIO基本概念指南

在Linux中,GPIO(General Purpose Input/Output,通用输入输出)是一种用于控制外部设备和传感器的通用接口。它允许你通过软件控制数字信号,从而实现各种硬件设备的交互,如LED、按钮、传感器、马达等。每个GPIO引脚都可以被配置为输入或者输出,使其适用于不同的应用场景。例如:你可以将GPIO配置为输出来控制LED灯的亮灭,或者将其配置为输入来读取按钮按下的状态。

2023-08-21 20:31:52 1173

原创 进程间通信的通信机制

进程间通信主要分为两个大类:1、Unix继承的通信方式:信号、管道2、system V IPC对象:共享内存、消息队列、信号灯集、套接字(网络编程使用)

2022-09-12 23:23:41 1203 1

原创 Qt实现简单图片查看器

​信号与槽(Signal & Slot)是Qt编程的基础,也是 Qt 的一大创新。因为有了信号与槽的编程机制,在 Qt 中处理界面各个组件的交互操作时变得更加直观和简单。信号(Signal)就是在特定情况下被发射的事件,例如PushButton 最常见的信号就是鼠标单击时发射的 clicked() 信号,一个 ComboBox 最常见的信号是选择的列表项变化时发射的 CurrentIndexChanged() 信号。

2022-09-09 19:49:30 1318 1

原创 C++停车场问题

由于停车场只有一个大门,当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,先进停车场的后退出,后进车场的先退出,符合栈的“后进先出,先进后出”的操作特点,因此,可以用一个栈来模拟停车场。

2022-09-05 11:43:59 1030

原创 Linux C 实现sqlite3数据库的基本操作

SQLite是一款轻型的数据库,是遵守ACID的关系式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。

2022-08-20 22:24:46 1263 1

原创 C 语言中 static 的作用

C语言中数据存储的方式有多种,我们平时大多数时间默认使用的为auto型的存储方式。但当我们需要提高程序的模块化特性时,ststic就成为了我们一个不错的选择。

2022-08-19 21:42:27 298

原创 Linux域套接字实现UDP本地通信

BSD UNIX最初引入套接字时只支持本地通信, 1986年之后进行了扩展,开始支持网络协议。在很多应用中,前后台进程通过UNIX域套接字进行通信。UNIX域套接字具有使用简单、效率高等特点。UNIX域套接字分为两种类型:流式套接字类型和用户数据报类型。...

2022-08-18 22:20:28 807 1

原创 UDP服务器和客户端的搭建,实现彼此间交互

Internet协议集支持一个无连接的传输协议,该协议称为用户数据报协议(UDP,User Datagram Protocol)。UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。nternet 的传输层有两个主要协议,互为补充。无连接的是 UDP,它除了给应用程序发送数据包功能并允许它们在所需的层次上架构自己的协议之外,几乎没有做什么特别的事情。面向连接的是 TCP,该协议几乎做了所有的事情。...

2022-08-17 20:32:35 4526 3

原创 TCP简易客户端的创建

所谓套接字(Socket),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议栈进行交互的接口...

2022-08-16 23:22:34 1132

原创 简易TCP服务器搭建

所谓套接字(Socket),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议栈进行交互的接口.........

2022-08-15 20:27:42 8089 3

原创 Linux库的制作

在程序编译阶段,只是将需要用到的函数做一个记录(函数名),最后在程序运行阶段再加载需要用到的函数。2、特点1、资源空间占用小,编译之后可执行文件比较小2、运行时需要动态库存在3、可移植性差4、优化升级方便,不需要重新编译源文件...

2022-08-14 21:14:21 239 1

原创 通过管道实现两文件之间的信息传递

通过管道实现两文件之间的信息传递1、实验目的通过有名管道实现将一个文件中的内容拷贝到另一个文件中2、实验要求包括三个文件:1、mkfifo.c:创建管道文件fifo2、reader.c:从终端argv[1]所指定的文件中读取内容,写入到管道文件fifo中3、writer.c:从管道文件fifo中读取内容,写到argv[1]所指定的文件中并保存...

2022-08-13 23:30:06 1137

原创 快速排序的实现方法

快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。...

2022-08-12 23:45:04 170

原创 兔子和鹰酱的通话

消息队列就是一些消息的队列,用户可以在消息队列中添加信息和读取消息等。这些消息存在于系统内核中,由“队列ID”来进行标识。消息队列可以实现消息的随时查询。消息队列的实现包括创建或者打开消息队列、添加信息、读取信息和控制消息队列这4种操作。............

2022-08-11 21:40:22 150

原创 LInux管道实现进程间通信及实例说明

管道是Linux中进程间通信的一种方式,它把一个程序的输出直接连接到另一个程序的输入,Linux的管道主要包括两种:无名管道和有名管道。

2022-08-10 17:28:56 948 2

原创 Linux实现线程间通信具体操作及实际案例说明

在进行进程切换时,需要不断刷新cache缓存,为了减少cache刷新时的资源消耗,我们引入了轻量级进程——线程。进程称为最小的资源分配单位,线程称为CPU最小的任务调度单位。二、线程的特点1、同一个进程创建的多个线程,共用同一个进程的地址空间。2、进程创建出线程后,我们把原本进程也称为线程,并且为主线程。..................

2022-08-09 19:20:00 2044

原创 Linux实现守护进程创建

当用户执行了一个程序时,就相当于创建了一个进程组,跟该进程具有亲缘关系的所有进程都属于该进程组。当用户打开一个终端时,就创建了一个会话,一个会话由一个或者多个进程组组成,一旦终端关闭,该会话中所有进程组中的进程全部结束。......

2022-08-08 20:22:46 2474 1

原创 Notepad++实现C/C++环境配置

​MinGW,是MinimalistGNUfor Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。......

2022-08-07 21:43:04 4489 5

原创 Linux C 实现终端命令 ls -l 操作

在Linux中,ls 是我们经常使用的一个命令,通过加上 ls 特定的参数,我们可以获取文件的多种信息。

2022-08-06 22:54:28 1540

原创 文件IO实现图片的加密操作

你有一颗好奇的心吗?想恶搞室友的电脑吗?今天,我们就来使用文件IO来进行文件的加密操作,快乐和你的好朋友对线吧!!!

2022-08-05 22:45:34 568

原创 Linux标准IO实现每一秒打印一次时间到指定文件

标准IO利用缓冲机制,减少系统调用次数,从而提高程序运行效率。标准IO是高级IO,文件IO是低级IO。标准IO是在文件IO的基础上做的一次再封装,标准IO一般用于操作普通文件。

2022-08-04 22:40:27 1077

原创 哈希查找算法之线性探测法(开放地址法)

哈希查找是一种时间复杂度为O(1)的一种效率极高的查找方法,与常见的遍历查找不同,哈希算法是通过数组元素数值与哈希表下标构建的一种查找方法,因此我们不需要遍历整个数组,即可对其进行访问。...

2022-08-03 22:22:02 20178

原创 二叉树的创建及遍历方法

在这里我们发现,我们每次存储时,基本上都是按照从上到下,从左到右的方式进行存储的,所以,我们此处存储数据时,可以先把根节点下面的左子树先存放完成,再存放右子树即可实现数据存储,并且,我们存放玩上一个数据之后的每一个节点都可以看做是一个根节点。二叉树的递归定义为:二叉树是一棵空树,或者是一棵由一个根节点和两棵互不相交的,分别称作根的左孩子树和右孩子树组成的非空树;按照一般的存储逻辑,我们一般存储都是按照如下编号逐个存储,但是这样的存储方式不太适用于我们的链式存储,因此,这里我们需要使用到递归存储。......

2022-08-02 20:05:46 37983 16

原创 顺序循环队列的创建和基本应用

顺序循环队列是队列里面使用比较广泛的一种队列,顺序队列在使用上方便,顺序队列对数据占用内存较小的程序来说是个不错的选择。

2022-08-01 23:54:00 483

原创 Linux Ubuntu普通文件和目录进行区分的shell实现

Linux Ubuntu将一个文件夹下的普通文件和目录进行区分的shell实现

2022-07-31 23:04:41 911

原创 链式队列的入栈和出栈相关操作

链式队列的入栈和出栈相关操作

2022-07-31 00:46:53 446 5

原创 状态机控制移位寄存器multisim仿真过程中出现的状态变量和状态转移条件不匹配的问题

仿真过程中出现的状态变量和状态转移条件不匹配的问题

2022-07-30 22:35:56 919

原创 Linux Ubuntu循环链表之Josepy问题

Josephu问题:据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人找到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从,Josephus要他的朋友先假装遵从,他将朋友与自己安排在第16个与第31个位置,于是逃过了这场死亡游戏。 ......

2022-07-29 22:11:56 171 2

原创 线性单链表的基本操作要点

数据结构链表的基本操作要点

2022-07-28 22:32:38 378 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除