自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 批判Readyread信号——你真的准备好读了?

今晚一个朋友跟我诉苦,骂了这个信号一晚上。 我想到寒假我也在骂这个信号,不禁想安慰一下。 点这里

2020-02-18 00:00:27

阅读数 3

评论数 0

原创 虚拟机又连不上网了?(亲测,一招鲜吃遍天)

最近玩的虚拟机莫名其妙就连不上网了, 上网查了种种攻![在这里插入图片描述](http略,最后得出结论:我的虚拟机非常正常,网络畅通无阻,给我气半死。。。 后来得高人相助,终于解决了。 来来来: 第一步: 打开我的虚拟机 里面的网络管理 第二步:打开我的网管: 选择编辑 按照我的编辑方式,可保无...

2020-02-16 23:39:04

阅读数 6

评论数 0

原创 粘包

粘包 什么是粘包? 须知:只有TCP有粘包现象,UDP永远不会粘包 粘包不一定会发生 如果发生了: 1.可能是在客户端已经粘了 2.客户端没有粘,可能是在服务端粘了 我在其他地方看到两种解释: 应用程序所看到的数据是一个整体,或说是一个流(stream),一条消息有多少字节对应用程序是不可见的,...

2020-02-14 19:09:10

阅读数 29

评论数 0

原创 exec族

这个一直没搞太明白,相识度高是一回事,不会用又是另一回事儿。 所以今天又温故了一遍: 为什么需要exec函数? fork子进程是为了执行新程序(fork创建了子进程后,子进程和父进程同时被OS调度执行,因此子进程可以单独的执行一个程序,这个程序宏观上将会和父进程程序同时进行) 可以直接在子进程的i...

2020-02-13 15:25:27

阅读数 39

评论数 0

原创 Qt引入第三方库(亲测Qt4和Qt5)

这两天看老师发的FFMpeg的示例(先用的是Qt4),爆了一串找不到第三方库的文件,于是我决定找找原因。 然后让Qt4气的要死。。。。。 其中还有不少门路还没理清楚,水很深啊。 通用方法:用代码写下去。 老师的栗子就用代码写了,不过那个Qt4好像不认,给我气半死。 在pro文件中操作: 附加头文...

2020-02-11 16:04:10

阅读数 1046

评论数 0

原创 我的ffmpeg整理

文字信息基本在这里了: 百度云盘链接 提取码:kpod 接下来放一份我的班长志凯哥的Qt中FFmpeg整理 FFMpeg总览: FFMPEG流程 就先放这些吧 ...

2020-02-07 16:38:34

阅读数 57

评论数 0

原创 闲谈extern

extern 这个东西啊,其实很简单,不过我基础不扎实,用的时候经常会给大脑添负担,这玩意儿到底咋用。 以下内容从一个大神的博客里捞出来的,他写的长。 extern关键字的作用是告诉编译器,在某个cpp文件中,存在这么一个函数/全局变量。 看了老半天至于看着这句了,给我看明白了。 ...

2020-02-06 17:15:48

阅读数 32

评论数 0

原创 expected expression before ‘=’ token

expected expression before ‘=’ token 问题解决办法: 宏定义时不小心写成了此:#define PORT = 6000 运行时出现错误:expected expression before ‘=’ token 关键是它会跟你说在哪一行,然后你如果在那一行找半天找不...

2020-01-28 10:44:22

阅读数 49

评论数 0

原创 Linux下Sqlite3

目录 23.1 创建/打开数据库 23.2 回调函数exec 23.3 创建数据表 23.4 Linux下编译 23.1 创建/打开数据库 和之前在Qt里模式不一样,Linux下打开数据库的代码: #include <stdio.h> #include &l...

2020-01-23 16:15:45

阅读数 71

评论数 0

原创 recv&send函数

socket函数创建一个文件描述符fd,一个fd 对应两个缓冲区,一个输入缓冲区,一个输出缓冲区。 而recv和send函数就是对这两个函数进行操作。 一、recv函数 int recv( SOCKET s, char *buf, int len, int flags); 函数功能:不论客户端...

2020-01-22 10:20:14

阅读数 89

评论数 0

原创 setsockopt与getsockopt

函数: #include <sys/types.h> #include <sys/socket.h> int getsockopt(int sock, int level, int optname, void *optval, socklen_t *optlen); i...

2020-01-21 19:12:29

阅读数 78

评论数 0

原创 服务端向客户端传输文件

目录 23.1 阅读须知 23.2 代码及注释 23.3 测试情况 23.1 阅读须知 本篇为:客户端向服务端请求文件传输,服务端根客户端需求发送文本文件(就是能用写字板打开成我们能看懂的文件,可能有些我没测到) 所以如果不符合你的需求就不用往下了。 23.2 代码及注释 //这是用socke...

2020-01-21 13:10:43

阅读数 68

评论数 0

原创 Socket网络通信之发送数据包

目录 22.1 本篇Socket 发送数据包的具体形式 22.2 代码设计 22.3 代码 22.1 本篇Socket 发送数据包的具体格式 鉴于我被那些吹牛皮的浪费一下午的时间的惨痛经历,我就明说了,我这篇是基于结构体形式的、客户端请求服务器的、服务器接收并发送应答包的,一篇博客。 如果不是你...

2020-01-20 20:55:43

阅读数 53

评论数 0

原创 程序启动画面

多数大型应用程序启动都会在程序完全启动前显示一个启动画面,在程序完全启动后消失。 这个界面想要显示什么那就看情况了 我的代码没放图片。 图片要放放在build目录底下,构建一下工程会生成build文件夹 .cpp这样 #include "mainwindow.h" #inclu...

2020-01-18 11:52:06

阅读数 35

评论数 0

原创 标准 文件 对话框类

标准基本对话框所需基本函数,我已经写在表格里面做上传资源了。 下面我们做一个标准文件对话框 新建Qt Widgets Application ,项目名称为 DialogExample 基类选择 QDialog 取消“创建界面”复选框选中状态 你品,你细细品 因为这个是连着的四...

2020-01-18 11:37:16

阅读数 27

评论数 0

原创 System V信号量

目录 21.1 POSIX 和System V 的差别 21.2 System V 信号量原语 21.3 System V 信号量栗子 21.1 POSIX 和System V 的差别 前两天写信号量的时候,由于不知道这个中关系,搞得我是一头雾水,导致那篇POSIX信号量写的乱七八糟去重写。 ...

2020-01-17 23:29:45

阅读数 19

评论数 0

原创 基本布局(QLayout)总结篇

布局中有常用的方法如:addWidget()和addLayout() 这个我们通过实现一个“用户基本信息登记表”项目来简单介绍如何使用基本布局管理 /* common_msg.h*/ #ifndef COMMON_MSG_H #define COMMON_MSG_H #include &...

2020-01-17 19:55:33

阅读数 22

评论数 0

原创 堆栈窗体 QStackedWidget 类

堆栈窗体 QStackedWidget 类也是应用程序中经常用到的。 在实际应用中,堆栈窗体与列表框 QListWidget 及下拉框 QComboBox配合使用 新建Qt Widgets Application ,项目名称为StackedWidget 基类选择 QMainWindow 取消“创...

2020-01-17 19:36:02

阅读数 18

评论数 0

原创 停靠窗口 QDockWidget 类

停靠窗口 QDockWidget 类也是在应用程序中经常用到的 以下实例: 窗口一只能在主窗口的右侧停靠 窗口二只能在浮动和右部停靠两种状态间切换 窗口三可以实现停靠窗口的各种状态 新建Qt Widgets Application ,项目名称为DockWidget 基类选择 QMainWi...

2020-01-17 14:50:29

阅读数 20

评论数 0

原创 分割窗口 QSplitter 类

分割窗口在应用程序中经常用到,它可以灵活地分割窗口布局,经常用在各类文件资源管理的窗口设计中 以下代码亲测有效 运行起来长这样 新建Qt Widgets Application ,项目名称为Spilter 基类选择 QMainWindow 取消“创建界面”复选框选中状态 #include &qu...

2020-01-17 14:22:28

阅读数 19

评论数 0

原创 线程池

目录 21.1 线程池基本概念 21.2 线程池组成部分 21.3 线程池工作原理 21.4 线程池代码实现 21.5 线程池设计注意点 21.1 线程池基本概念 线程池是预先创建线程的一种技术。线程池在任务还没有到来之前,创建一定数量(N)的线程,放入空闲队列中。这些线程都是处于阻塞(S...

2020-01-17 11:44:52

阅读数 28

评论数 0

原创 高并发服务器(二)-- epoll模型

目录 20.1 epoll模型简介 20.2 epoll API 20.3 epoll 服务器示例 20.1 epoll模型简介 epoll是Linux内核为处理大批量文件描述符而作了改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连...

2020-01-16 16:33:30

阅读数 38

评论数 0

原创 高并发服务器(一)--- select模型

目录 19.1 什么是并发 19.2 多进程并发服务器 19.3 多线程并发服务器 19.4 多路 I/O 转接服务器 (1)select (2)epoll 19.5 线程池并发服务器 19.6 UDP局域网络服务器 19.7 其他常用函数 19.1 什么是并发 并发,在操作系统中,是指一...

2020-01-16 14:33:33

阅读数 26

评论数 0

原创 argc、argv[ ]、envp[ ]

目录 18.1 argc 18.2 argv[ ] 18.3 envp[ ] 18.4 总结 main(int argc, char *argv[ ], char *env[ ]); 以前老是搞不明白那个argc!=2是什么意思,那个argv[ ]为什么不从【0】开始而是从【1】开始 现在好了 ...

2020-01-15 23:36:05

阅读数 21

评论数 0

原创 SOCKET -- 网络编程

目录 17.1 预备知识 (1)概念性的东西 (2)IP地址转换函数 (3)Sockaddr 数据结构 17.2 网络套接字函数 (1)socket (2)bind (3)listen (4)accept (5)connect 17.3 C/S 模型 - TCP (1)se...

2020-01-15 20:32:39

阅读数 29

评论数 0

原创 网络基础

目录 16.1 OSI七层模型 16.2 TCP/IP四层模型 16.3 通信过程(三次握手) 16.4 大小端字节序 16.5 其他 16.1/2 OSI七层模型/TCP.IP四层模型 16.3 通信过程(三次握手) ...

2020-01-14 21:54:55

阅读数 17

评论数 0

原创 进程间锁

目录 15.1 进程间pthread_mutex 15.2 文件锁 15.1 进程间互斥锁 直接上原语吧: #include<pthread.h> int pthread_mutexattr_init(pthread_mutexattr_t *attr); int pthread...

2020-01-14 19:18:38

阅读数 28

评论数 0

原创 POSIX信号量

目录 13.1 概念 13.2 原语 13.3 PV操作 13.1 概念 什么是信号量?信号量(Semaphore)是一种控制多线程(进程)访问共享资源的同步机制 当它的值大于0时,表示当前可用资源的数量; 当它的值小于0时,其绝对值表示等待使用该资源的线程/进程个数。 注...

2020-01-14 18:59:08

阅读数 31

评论数 0

原创 线程属性

目录 13.1

2020-01-14 17:49:37

阅读数 31

评论数 0

原创 线程同步(2)-- 条件变量

目录 12.1 条件变量 12.2 信号量 12.3 进程间通信

2020-01-14 11:26:21

阅读数 32

评论数 0

原创 错误处理机制

目录 11.1、errno 11.2、perror 11.3、strerror 写代码都知道debug调试是很重要的嘛,我觉得会比打断点直接了当 所以这个错误吃力机制我觉得有必要补一下 11.1 errno 经常在调用linux 系统api 的时候会出现一些错误,比方说使用open() wr...

2020-01-13 23:19:08

阅读数 16

评论数 0

原创 线程同步(1)-- 互斥量与读写锁

目录: 10.1、线程为什么要同步 10.2、互斥量 10.3、死锁 10.4、读写锁 10.5、条件变量 10.6、信号量 10.7、进程间锁 10.1 线程为什么要同步 做个小实验吧 #include<pthread.h> #include&l...

2020-01-13 22:55:06

阅读数 16

评论数 0

原创 线程

目录 9.1、线程概念 9.2、线程原语 9.3、线程终止方式 9.4、线程属性 9.5、NPTL 9.6、细节注意 9.1 线程概念 9.1.1 什么是线程 官方话就是:在一个程序里的多个执行路线就叫做线程(thread)。更准确的定义是:线程是“一个进程内部的控...

2020-01-13 12:47:21

阅读数 27

评论数 0

原创 时间函数

目录 8.1、alarm 8.2、setitimer 8.3、文件访问时间 8.1 alarm 软定时器 功能:专门为sigalrm信号而设,在指定的时间seconds秒后,将向进程本身发送sigalrm信号,又称为闹钟时间。 函数原型: unsigned int alarm(unsigne...

2020-01-12 17:41:41

阅读数 25

评论数 0

原创 信号

目录 7.1 信号的概念 7.2 进程处理信号行为 7.3 信号集处理函数 7.4 阻塞信号集 7.5 信号捕捉设定 7.6 C标准库信号处理函数 7.7 SIGCHLD信号处理 7.1 信号的概念 什么是信号: 信号是UNIX系统响应某些状况而产生的事件,进程在接收到信号时会采取相应的行...

2020-01-12 16:42:05

阅读数 20

评论数 0

原创 进程间关系

目录 6.1 进程组 6.2 会话 来补一下前面留下的坑 6.1 进程组 一个或多个进程组成的集合,进程组的组ID是一个正整数。 //获取当前进程组组ID pid_t getpgid(pid_t pid); pid_t getpgrp(void); 几个概念: 组长进程:进程ID号等...

2020-01-12 15:07:51

阅读数 22

评论数 0

原创 守护进程

目录 5.1 概念 5.2 模型 5.1 概念 (1)什么是守护进程 Daemon(守护进程)是运行在后台的一种特殊进程。**它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。**它不需要用户输入就能运行而且提供某种服务,不是对整个系统就是对某个用户程序提供服务。Linux系...

2020-01-12 13:03:39

阅读数 28

评论数 0

原创 进程间通信

目录 4.1 pipe管道 4.2 FIFO有名管道 4.3 内存共享映射 4.4 Unix Domain Socket 4.1 pipe管道 什么是管道? 可以理解为内存中的一个缓冲区,用于将某个进程的数据流导入,由某一个进程导出,实现通信。 再通俗的说,看图: ...

2020-01-11 22:19:34

阅读数 40

评论数 1

原创 进程

目录: 3、进程 3.1、进程环境 3.2、进程状态 3.3、进程原语 3.3.1、fork 3.3.2、exec族 3.3.3、wait/waitpid 3.1 进程环境 进程控制块PCB:就是进程在操作系统中的“户口”,具体实现是 task_struct数据结构: 1.状...

2020-01-11 17:57:47

阅读数 27

评论数 0

原创 文件系统

目录 2、 文件系统(我看不懂的部分就直接削了吧) 2.1 ext2系统 2.2 link 2.3 rename 2.4 chdir :改变当前进程的工作目录 2.5 getcwd :获取当前进程的工作目录 2.6 目录操作 2.7 dup/dup2 2.1 ext2系统 文件系统实际上...

2020-01-11 16:00:17

阅读数 29

评论数 0

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