C++
文章平均质量分 79
c和c++的一些简单问题
玖尾猫
在职嵌入式工程师
展开
-
进程间通信的通信机制
进程间通信主要分为两个大类:1、Unix继承的通信方式:信号、管道2、system V IPC对象:共享内存、消息队列、信号灯集、套接字(网络编程使用)原创 2022-09-12 23:23:41 · 1279 阅读 · 1 评论 -
Qt实现简单图片查看器
信号与槽(Signal & Slot)是Qt编程的基础,也是 Qt 的一大创新。因为有了信号与槽的编程机制,在 Qt 中处理界面各个组件的交互操作时变得更加直观和简单。信号(Signal)就是在特定情况下被发射的事件,例如PushButton 最常见的信号就是鼠标单击时发射的 clicked() 信号,一个 ComboBox 最常见的信号是选择的列表项变化时发射的 CurrentIndexChanged() 信号。原创 2022-09-09 19:49:30 · 1463 阅读 · 1 评论 -
C++停车场问题
由于停车场只有一个大门,当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,先进停车场的后退出,后进车场的先退出,符合栈的“后进先出,先进后出”的操作特点,因此,可以用一个栈来模拟停车场。原创 2022-09-05 11:43:59 · 1120 阅读 · 0 评论 -
Linux C 实现sqlite3数据库的基本操作
SQLite是一款轻型的数据库,是遵守ACID的关系式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如Tcl、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源世界著名的数据库管理系统来讲,它的处理速度比他们都快。原创 2022-08-20 22:24:46 · 1319 阅读 · 1 评论 -
C 语言中 static 的作用
C语言中数据存储的方式有多种,我们平时大多数时间默认使用的为auto型的存储方式。但当我们需要提高程序的模块化特性时,ststic就成为了我们一个不错的选择。原创 2022-08-19 21:42:27 · 354 阅读 · 0 评论 -
Linux域套接字实现UDP本地通信
BSD UNIX最初引入套接字时只支持本地通信, 1986年之后进行了扩展,开始支持网络协议。在很多应用中,前后台进程通过UNIX域套接字进行通信。UNIX域套接字具有使用简单、效率高等特点。UNIX域套接字分为两种类型:流式套接字类型和用户数据报类型。...原创 2022-08-18 22:20:28 · 924 阅读 · 1 评论 -
UDP服务器和客户端的搭建,实现彼此间交互
Internet协议集支持一个无连接的传输协议,该协议称为用户数据报协议(UDP,User Datagram Protocol)。UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。nternet 的传输层有两个主要协议,互为补充。无连接的是 UDP,它除了给应用程序发送数据包功能并允许它们在所需的层次上架构自己的协议之外,几乎没有做什么特别的事情。面向连接的是 TCP,该协议几乎做了所有的事情。...原创 2022-08-17 20:32:35 · 4787 阅读 · 3 评论 -
TCP简易客户端的创建
所谓套接字(Socket),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议栈进行交互的接口...原创 2022-08-16 23:22:34 · 1172 阅读 · 0 评论 -
简易TCP服务器搭建
所谓套接字(Socket),就是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象。一个套接字就是网络上进程通信的一端,提供了应用层进程利用网络协议交换数据的机制。从所处的地位来讲,套接字上联应用进程,下联网络协议栈,是应用程序通过网络协议进行通信的接口,是应用程序与网络协议栈进行交互的接口.........原创 2022-08-15 20:27:42 · 9830 阅读 · 3 评论 -
Linux库的制作
在程序编译阶段,只是将需要用到的函数做一个记录(函数名),最后在程序运行阶段再加载需要用到的函数。2、特点1、资源空间占用小,编译之后可执行文件比较小2、运行时需要动态库存在3、可移植性差4、优化升级方便,不需要重新编译源文件...原创 2022-08-14 21:14:21 · 270 阅读 · 1 评论 -
通过管道实现两文件之间的信息传递
通过管道实现两文件之间的信息传递1、实验目的通过有名管道实现将一个文件中的内容拷贝到另一个文件中2、实验要求包括三个文件:1、mkfifo.c:创建管道文件fifo2、reader.c:从终端argv[1]所指定的文件中读取内容,写入到管道文件fifo中3、writer.c:从管道文件fifo中读取内容,写到argv[1]所指定的文件中并保存...原创 2022-08-13 23:30:06 · 1257 阅读 · 0 评论 -
快速排序的实现方法
快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用,再加上快速排序思想----分治法也确实实用,因此很多软件公司的笔试面试,包括像腾讯,微软等知名IT公司都喜欢考这个,还有大大小的程序方面的考试如软考,考研中也常常出现快速排序的身影。...原创 2022-08-12 23:45:04 · 196 阅读 · 0 评论 -
兔子和鹰酱的通话
消息队列就是一些消息的队列,用户可以在消息队列中添加信息和读取消息等。这些消息存在于系统内核中,由“队列ID”来进行标识。消息队列可以实现消息的随时查询。消息队列的实现包括创建或者打开消息队列、添加信息、读取信息和控制消息队列这4种操作。............原创 2022-08-11 21:40:22 · 192 阅读 · 0 评论 -
LInux管道实现进程间通信及实例说明
管道是Linux中进程间通信的一种方式,它把一个程序的输出直接连接到另一个程序的输入,Linux的管道主要包括两种:无名管道和有名管道。原创 2022-08-10 17:28:56 · 1028 阅读 · 2 评论 -
Linux实现线程间通信具体操作及实际案例说明
在进行进程切换时,需要不断刷新cache缓存,为了减少cache刷新时的资源消耗,我们引入了轻量级进程——线程。进程称为最小的资源分配单位,线程称为CPU最小的任务调度单位。二、线程的特点1、同一个进程创建的多个线程,共用同一个进程的地址空间。2、进程创建出线程后,我们把原本进程也称为线程,并且为主线程。..................原创 2022-08-09 19:20:00 · 2413 阅读 · 0 评论 -
Linux实现守护进程创建
当用户执行了一个程序时,就相当于创建了一个进程组,跟该进程具有亲缘关系的所有进程都属于该进程组。当用户打开一个终端时,就创建了一个会话,一个会话由一个或者多个进程组组成,一旦终端关闭,该会话中所有进程组中的进程全部结束。......原创 2022-08-08 20:22:46 · 2587 阅读 · 1 评论 -
Notepad++实现C/C++环境配置
MinGW,是MinimalistGNUfor Windows的缩写。它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。......原创 2022-08-07 21:43:04 · 4895 阅读 · 5 评论 -
Linux C 实现终端命令 ls -l 操作
在Linux中,ls 是我们经常使用的一个命令,通过加上 ls 特定的参数,我们可以获取文件的多种信息。原创 2022-08-06 22:54:28 · 1653 阅读 · 0 评论 -
文件IO实现图片的加密操作
你有一颗好奇的心吗?想恶搞室友的电脑吗?今天,我们就来使用文件IO来进行文件的加密操作,快乐和你的好朋友对线吧!!!原创 2022-08-05 22:45:34 · 637 阅读 · 0 评论 -
Linux标准IO实现每一秒打印一次时间到指定文件
标准IO利用缓冲机制,减少系统调用次数,从而提高程序运行效率。标准IO是高级IO,文件IO是低级IO。标准IO是在文件IO的基础上做的一次再封装,标准IO一般用于操作普通文件。原创 2022-08-04 22:40:27 · 1153 阅读 · 0 评论 -
二叉树的创建及遍历方法
在这里我们发现,我们每次存储时,基本上都是按照从上到下,从左到右的方式进行存储的,所以,我们此处存储数据时,可以先把根节点下面的左子树先存放完成,再存放右子树即可实现数据存储,并且,我们存放玩上一个数据之后的每一个节点都可以看做是一个根节点。二叉树的递归定义为:二叉树是一棵空树,或者是一棵由一个根节点和两棵互不相交的,分别称作根的左孩子树和右孩子树组成的非空树;按照一般的存储逻辑,我们一般存储都是按照如下编号逐个存储,但是这样的存储方式不太适用于我们的链式存储,因此,这里我们需要使用到递归存储。......原创 2022-08-02 20:05:46 · 43125 阅读 · 18 评论 -
链式队列的入栈和出栈相关操作
链式队列的入栈和出栈相关操作原创 2022-07-31 00:46:53 · 469 阅读 · 5 评论 -
Linux Ubuntu循环链表之Josepy问题
Josephu问题:据说著名犹太历史学家 Josephus有过以下的故事:在罗马人占领乔塔帕特后,39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌人找到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人该人就必须自杀,然后再由下一个重新报数,直到所有人都自杀身亡为止。然而Josephus 和他的朋友并不想遵从,Josephus要他的朋友先假装遵从,他将朋友与自己安排在第16个与第31个位置,于是逃过了这场死亡游戏。 ......原创 2022-07-29 22:11:56 · 199 阅读 · 2 评论 -
线性单链表的基本操作要点
数据结构链表的基本操作要点原创 2022-07-28 22:32:38 · 406 阅读 · 2 评论