- 博客(15)
- 收藏
- 关注
原创 qemu 源码编译笔记
问题1:root@ubuntu:/home/hc/software/qemu5.2.0/build# ../qemu-5.2.0/configureERROR: pkg-config binary 'pkg-config' not found解决办法:sudo apt-get install pkg-config问题2:ERROR: glib-2.48 gthread-2.0 is required to compile QEMU解决方法:sudo apt-get instal
2022-03-01 13:53:53 2652
原创 高级I/O函数
Linux提供了很多高级的I/O函数。它们并不像Linux基础I/O函数(比如open和read)那么常用,但在特定的条件下却表现出优秀的性能。网络编程相关的函数大致分为三类: 用于创建文件描述符的函数,包括pipe、dup/dup2函数。 用于读写数据的函数,包括readv/writev、sendfile、mmap/munmap、splice和tee函数。 用于控制I/O行为和属性的函数,包括fcntl函数。...
2021-09-16 20:32:03 167
原创 Linux网络编程基础API
1、socket函数 unix/linux的一个哲学是:所有东西都是文件。socket也不例外,它就是可读、可写、可控制、可关闭的文件描述符。socket函数结构如下。 int socket(int dimain, int type, int protocol); socket函数对应于普通文件的打开操作。普通文件的打开操作返回一个文件描述字,而socket()用于创建一个socket描述符,它唯一标识一个socket。这个socket描述字跟文件描述字...
2021-09-14 14:01:30 163
原创 TCP协议详解
1、TCP服务特点 TCP服务通信是一对一的,通信双方必须先建立连接,通信双方必须为该连接分配必要的内核资源,以管理连接的状态和连接上数据的传输。TCP是全双工的,即双方的数据读写可通过一个连接进行。完成数据交换之后,通信双方都必须断开连接以释放系统资源。 TCP协议使用字节流(UDP使用数据报),实际编程中字节流和数据报的主要区别体现在通信双方是否必须执行相同次数的读、写操作(只是表现形式),发送端应用程序连续执行多次写操作时,TCP模块先将这些数据放入TCP发送缓冲区中...
2021-09-09 20:39:21 626
原创 IP协议详解
IP协议是TCP/IP协议族的核心协议,也是socket网络编程的基础之一。IP协议是TCP/IP协议族的动力,它为上层协议提供无状态、无连接、不可靠的服务。1、IPv4头部结构 IPv4的头部结构,其长度通常为20字节,除非含有可变长的选项部分。 4位版本号(version)指定IP协议的版本。对于IPv4来说,其值是4。 4位头部长度标识该IP头部有多少个32bit字节。因为4位最大能表示15,所以IP头部最长是60字节。...
2021-09-09 09:54:41 369
原创 TCP/IP协议族
1、TCP/IP协议族体系结构以及主要协议 TCP/IP协议族是一个四层协议系统,自底而上分别是数据链路层、网络层、传输层和应用层。每一层完成不同的功能,且通过若干协议来实现,上层协议使用下层协议提供的服务。如下图所示。1.1、数据链路层 数据链路层实现了网卡接口的网络驱动程序,以处理数据在物理媒介上的传输。 数据链路层两个常用协议是ARP协议(Address Resolve Protocol,地址解析协议)和RARP协议(Reverse Ad...
2021-09-07 21:06:31 2470
原创 QT中setLayout无效的问题
当我们自己创建了一个Layout对象以后,使用QWidget的setLayout方法,将这个Layout对象应用到窗口中的时候,发现窗口上没有我们添加的控件。 比如,QMainWindow就是一个例子,还有QToolBar也是这样,还有其他的QT预定义的别的窗口类有时候也会遇到这样的情况。 之所以出现这样的情况,是因为这个窗口类中,已经有了一个Layout对象了,这时候,当你再setLayout的时候,就是无效的,这里有三个办法解决该类问题: ...
2020-08-26 20:00:42 2337 2
原创 关于Qt旋转图片的一些说明
我们在QT中加载图片一般都是将图片加载在一个label中显示,当我们想让这个label旋转时,就会出现问题,因为控件在不重写的情况下,基本旋转不了,我们只能去旋转label中的图片,达到旋转控件的效果,在网上查了很多资料但是很少有人能把写完整的,所以在这里记录下自己遇到这些问题时的一些心得吧。 首先,我们了解一下QMatrix的知识。QPainter预设的座标系统是绘图装置的座...
2019-03-14 12:50:39 2475
转载 关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法今天突然想起再摸摸MFC,所以打开以前的项目重新编译时出现了如下问题:错误 1 error MSB8031: Building an MFC project for a non-Unicode character set is depr
2017-07-19 22:20:49 444
转载 Windows 7 下 vs2010内存泄漏检测工具VLD的使用
1 环境和软件 Windows7 32位系统 Visual Studio 2012 旗舰版 vld-2.2.3-setup.exe 大小1.04M2 步骤 1)下载安装 下载好 vld-2.2.3-setup.exe(大小1.04M) 并安装,一路点击"确定"到安装完成, 中间会有个提示,
2016-11-17 19:51:23 3517
原创 SOCKET学习笔记1——TCP通讯
一服务端1声明头文件,引入静态库#include#pragma comment(lib,"ws2.32.lib")2初始化socket库,判断返回值NO_ERROR 高地位字节WSADATA wsaData;WSAStartup(MAKEWORD(2,2), &wsaData);3声明SOCKET变量 SOCKADDR_IN变量SOCKET socketSvr =
2016-01-05 00:32:29 468
原创 vs2010下安装配置opencv2.4.8
配置下载安装软件下载 Opencv for Windows 最新版本,本文是 Opencv 2.4.8。双击后会出现解压提示,实际上就是“安装”了,路径填写为 D:/Program Files,然后确定。Note D:/Program Files 可以为任意自己希望opencv安装的路径,解压完成后,会在你所填目录中新增一个 opencv文件夹,里面就是
2014-07-07 22:31:08 548
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人