自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 wireshark过滤tcp,udp报文

tcp报文头有20个字节,点击transmission control protocol可以看出,上图选中部分为报文头,报文头后面为数据,因此想过滤tcp报文,如数据内第六个字节开始的四个字节内容,需输入tcp[26:4]==xx:xx:xx:xx,xx为各字节过滤内容。udp报文头只有8个字节,因此过滤udp报文,如数据内第0个字节开始的2个字节内容,需输入tcp[8:2]==xx:xx,xx为各字节过滤内容。

2023-06-01 11:11:47 1381

转载 FFmpeg中的时间基(time_base), AV_TIME_BASE

FFmpeg中的时间基(time_base), AV_TIME_BASE 一. AV_TIME_BASE经常在FFmpeg的代码中看到一个奇怪的单位AV_TIME_BASE,比如AVFormatContext结构体中就有这样一个字段:duration,它在FFmpeg中的解释如下:/** * Duration of the stream, in AV_TIME_BASE fractional * seconds. Only set this value if y...

2021-01-20 09:12:50 1225

原创 【安装教程】Ubuntu18.04中用CMake-gui安装OpenCV4.1.0和OpenCV_contrib-4.1.0(图文)

目录一、简要说明二、下载和添加依赖包三、配置OpenCV四、配置环境变量新建一个 opecv.pc (勾选了就跳过此步骤,勾选生成的opencv4.pc 我印象中好像不用修改的,不放心可以打开看看确认一下 )那么这个 opencv.pc 要放在哪里?五、测试结合了几个博主的安装说明,根据自己的安装经验进行总结,感谢lalulaBar、Hzhihua两位,引用文章如下https://blog.csdn.net/u011897411/article/details/89.

2021-01-06 19:37:26 3167 3

转载 2020-12-29

C++ 枚举类型详解转载自https://www.runoob.com/w3cnote/cpp-enum-intro.html枚举类型的定义:枚举类型(enumeration)是 C++ 中的一种派生数据类型,它是由用户定义的若干枚举常量的集合。定义格式:枚举类型的定义格式为:enum <类型名> {<枚举常量表>};格式说明:关键字enum——指明其后的标识符是一个枚举类型的名字。 枚举常量表——由枚举常量构成。"枚举常量"或称"枚举成员",是以标识符形

2020-12-29 10:23:30 130

转载 串口通讯—异步通信方式

串行通信可以分为两种类型:同步通信、异步通信。1.异步通信的特点及信息帧格式:以起止式异步协议为例,下图显示的是起止式一帧数据的格式:图1起止式异步通信的特点是:一个字符一个字符地传输,每个字符一位一位地传输,并且传输一个字符时,总是以“起始位”开始,以“停止位”结束,字符之间没有固定的时间间隔要求

2013-09-15 21:36:16 1520

原创 波特率与比特率

调制速率  在电子通信领域,波特率即调制速率,指的是信号被调制以后在单位时间内的波特数,即单位时间内载波参数变化的次数。它是对信号传输速率的一种度量,通常以“波特每秒”(Bps)为单位。波特率  波特率指数据信号对载波的调制速率,它用单位时间内载波调制状态改变次数来表示,其单位为波特(Baud)。 波特率与比特率的关系为:比特率=波特率X单个调制状态对应的二进制位数。

2013-09-15 21:02:41 864

转载 C语言字节对齐

文章最后本人做了一幅图,一看就明白了,这个问题网上讲的不少,但是都没有把问题说透。  一、概念       对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做自然对齐。比如在32位cpu下,假设一个整型变量的地址为0x00000004,那它就是自然对齐的。     二、为什么要字节对齐      需要字节对齐的根本原因在于CPU访问数

2013-09-14 21:06:20 600

转载 推荐~某位前辈的求职经历及建议~超详细

今天上网随便搜搜,发现了某位前辈的博客,里面记载了他求职过程的全经历,并且还给了许多关于求职每个阶段的建议。      虽然专业不一样,但是我看完之后还是很有启发。      推荐一下,希望对大家也有帮助~     BLOG地址:http://vansha.blogbus.com/tag/找工作/   (文章已经贴在下面了,方便大家直接看哦~)     给将要找工作的学

2013-08-19 16:10:12 5319

原创 MFC学习笔记

1、全局对象在入口函数之前分配地址空间,并且赋值。2、CWinApp 表示应用程序对象,每一个mfc程序只有一个。3、根据继承性原理,基类中的this指针指向派生类对象。(第三节28分)4、Afx...全局函数,AfxGetApp()获得CwWnApp的指针

2013-07-31 11:15:24 644

原创 XP添加打印机

点控制面板,点打印机和其它硬件,点打印机和传真,点添加打印机,点下一步,点添加网络打印机,点浏览打印机,找到自己要添加的打印机,安装即可。

2013-06-08 15:11:45 741

原创 机械电机知识

1、转动惯量:转动惯量(Moment of Inertia)是刚体绕轴转动时惯性(回转物体保持其匀速圆周运动或静止的特性)的量度,用字母I或J表示。转动惯量的表达式为I=∑ mi*ri^2;若刚体的质量是连续分布的,则转动惯量的计算公式可写成I=∫r^2dm=∫r^2ρdV(式中mi表示刚体的某个质元的质量,ri表示该质元到转轴的垂直距离,ρ表示该处的密度,求和号(或积分号)遍及整个刚

2013-04-18 11:37:28 1464

原创 设计模式几大原则

一、松耦合高内聚代码耦合:一个软件结构内不同模块之间互连程度的度量(耦合性也叫块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差,模块间耦合的高低取决于模块间接口的复杂性,调用的方式以及传递的信息。)软件工程规定写代码的原则是“高内聚,低耦合”。内聚是代码块间的独立性,耦合是各个代码块间的联系。对于低耦合,粗

2013-04-09 10:16:41 638

原创 设计模式之桥接模式

对象的继承中,子类的实现与它的父类有非常紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化。当你需要复用子类时,如果继承下来的实现不适合解决新的问题,则父类必须重写或被其他更适合的类替换。这种依赖关系限制了灵活性并最终限制了复用性。       合成/聚合复用原则:尽量使用合成/聚合,尽量不要使用类继承。聚合表示一种弱的“拥有”关系,体现的是A对象可以包含B对象,但B对象不是A对

2013-04-08 10:36:51 554

转载 C++类静态数据成员与类静态成员函数

在没有讲述本章内容之前如果我们想要在一个范围内共享某一个数据,那么我们会设立全局对象,但面向对象的程序是由对象构成的,我们如何才能在类范围内共享数据呢?   这个问题便是本章的重点:   声明为static的类成员或者成员函数便能在类的范围内共同享,我们把这样的成员称做静态成员和静态成员函数。   下面我们用几个实例来说明这个问题,类的成员需要保护,通常情况下为了不违背类的封装特性

2013-04-08 09:23:21 494

原创 设计模式之单例模式

单例模式(Singleton):保证一个类仅有一个实例,并提供一个访问它的全局访问点。单例模式中,类自身负责保存它的唯一实例,这个类保证没有其它实例被创建,并提供一个访问该实例的方法。class Singleton{ private static Singleton instance; //声明一个静态的类变量 private Si

2013-04-08 09:22:25 521

转载 TiXml使用详解

本文用一个详细的例子说明了TiXml的使用方法。如写、查找、插入、替换、加载、遍历等常见操作。首先简单介绍一下TinyXml,要看详细的在网上搜搜了^_^:TinyXML是一个简单小巧,可以很容易集成到其它程序中的C++ XML解析器。简单地说,TinyXML解析一个XML文档并由此生成一个可读可修改可保存的文档对象模型(DOM)。TinyXML使用文档对象模型(DOM),这意味着XML数

2012-12-25 20:23:48 23216

转载 TinyXML Tutorial 中文指南

注: 本文是 TinyXML 2.5.3 版本 Document 中的《TinyXML Tutorial》的翻译文档,由本人 Dennis.Gao 翻译,版权归原作者所有,转载本文档请注明出处。原文出自 TinyXML 源码包doc目录。在线文档:http://www.grinninglizard.com/tinyxmldocs/tutorial0.htmlAuthor : Dennis.G

2012-12-25 20:22:05 1434 1

原创 linux学习

1 cd- 返回上次进入的目录

2012-12-08 22:07:42 357

原创 项目中的问题

1、编写了一个新类,如果在头文件中声明了,却没在源文件中初始化,虽然能编译通过,但是却运行不了,出现的问题是Flight.exe 中的 0x671a3df2 (QtCored4.dll) 处未处理的异常: 0xC0000005: 读取位置 0x00000010 时发生访问 问题应该是这样,在头文件中声明的变量时指针,所以只是给指针分配了空间,而并没有给指针指向的数据分配空间,所以在源文

2012-12-02 20:35:45 591

原创 磁盘分区后系统无法启动

电脑中装了3个系统,磁盘重新分区后电脑就启动不了了,解决办法:1、首先用老毛桃启动硬盘中的win7CE启动,修复启动项,可以正常启动windows系统。2、然后使用http://www.linuxidc.com/Linux/2012-05/60679.htm中大大的方法重新制作多重引导即可。

2012-11-03 19:09:43 5469

转载 Centos6.0 yum源配置

在CentOS下运行yum install flash-plugin或yum install mplayer的时候,提示库里没有找到这个软件?为什么会这样?因为CentOS是RHEL编译过来的,去掉了所有关于版权问题的东西。因此,在没有使用第三方软件库的情况下,很多软件无法用yum install来直接安装。 EPEL(Extra Packages for Enterprise Linux)软

2012-11-01 11:09:45 2687

原创 linux 指令

获取当前用户名:whoami获取当前所在目录:pwd确认文件类型:file filename

2012-10-30 17:07:25 364

转载 linux下date命令详解

名称 : date 使用权限 : 所有使用者使用方式 : date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]说明 : date 能用来显示或设定

2012-10-30 16:27:43 625

原创 C++运算符优先级

C++ 运算符优先级列表http://www.cppreference.com/operator_precedence.htmlPrecedenceOperatorDescriptionExampleAssociativity1()[]->.::++--Grouping operatorArray acce

2012-10-19 15:44:42 730

原创 模版特化

1、函数模版 (1)   定义:     template int compare(const T &v1,const T &v2) { if(v1<v2) return -1; if(v2<v1) return 1; }                   模版定义以关键字template开始

2012-09-27 16:58:22 638

转载 C++动态数组(转)

1.变长一维数组         这里说的变长数组是指在编译时不能确定数组长度,程序在运行时需要动态分配内存空间的数组。实现变长数组最简单的是变长一维数组,你可以这样做:         //文件名:   array01.cpp     #include     using   namespace   std;         int   main()

2012-09-20 21:58:35 662

转载 类的前向声明,class和include的区别

前向声明的定义:有些时候我们可以声明一些类但是并不去定义它,当然这个类的作用也很有限了。比如class foo;声明一个foo类,这个声明,有时候也叫做前向声明(forward declaration),在声明完这个foo类之后,定义完这个foo类之前的时期,foo类是一个不完全的类型(incomplete type),也就是说foo类是一个类型,但是这个类型的一些性质(比如包含哪些成员,

2012-09-15 11:21:25 1894

转载 C++头文件包含问题-Include和class **

在一些大的工程中,可能会包含几十个基础类,免不了之间会互相引用(不满足继承关系,而是组合关系)。也就是需要互相声明。好了,这时候会带来一些混乱。如果处理得不好,会搞得一团糟,根据我的经验,简单谈谈自已的处理办法:编码时,我们一般会尽量避免include头文件,而是采用声明class XXX。 但有时候还是必须用Include头文件,那么,两者的划分在于什么呢?应该是很明确的,但书上好像都少

2012-09-15 11:00:50 5043

转载 程序员都应该知道的福利

眼下正是年后跳槽的黄金时期,园里的大牛小牛拿了去年的年终奖后,有些肯定想给自己加点工资。园里的大牛小牛都是我们中国软件业的精英,跳槽的时候肯定手里握着好几个Offer,不知道选择哪家。先不管工作的内容和前途,就工作本身的待遇,我们还是可以比较的。 HR是专门负责谈薪资的, 当我们跟HR讨价还价的时候, HR会介绍公司有的福利,而回避公司没有的福利。 作为程序员,我们一定要对跟我们利益息息相关的各种

2012-09-15 10:59:44 1892

转载 c和c++ 中的文件路径表示

文件路径的表示可以分为绝对路径和相对路径:     绝对路径表示相对容易,例如     //pDummyFile = fopen("D:\\vctest\\glTexture\\texture\\dummy.bmp", "rb");   给出了从盘符开始的全部路径,这里需要注意的是“\”要用双斜线"\\"     vc工程默认访问的目录是工程目录,相对路径有以下多种形式,:

2012-09-09 16:57:58 844

转载 Qt中的消息通知和事件发送

Qt中的信号和槽机制、事件机制是其具有特色的两大机制。利用这两种机制可以轻松地实现需要的消息通知和事件通知。1、信号和槽机制充分使用Qt库中已经定义和实现好的对象的信号和槽函数,如按钮的clicked()/pressed()信号等,它们能满足很多的需求;自定义缺乏的信号和槽函数,借助Qt的元对象系统和内省机制,在创建类时添加Q_OBJECT宏,使用signals:/slots:标记

2012-09-06 16:26:27 12167

转载 Qt中文显示

QT默认的编码(unicode)是不能显示中文的,可能由于windows的默认编码的问题,windows默认使用(GBK/GB2312/GB18030),所以需要来更改QT程序的编码来解决中文显示的问题。QT中有专门的一个类来处理编码的问题(QTextCodec)。在QT3中,QApplication可以设置程序的默认编码,但是在QT4中已经没有了该成员函数。可以以下的这些方法来设置编

2012-08-31 10:53:28 634

转载 ::域名解析符

::域名解析符!返回值类型名 类名::函数成员名(参数表){函数体。}这个是在类内声明函数后在类外定义的一种方法!如果不加"类名::"的话,编译系统就不会知道你的函数属于哪个类;另外,这样定义函数一定要在类中声明之后,说明它是类的成员函数才可以!在类内声明的时候就不需要::了,直接 返回值类型 函数名(参数表) 就可以了!1.::域作用符,用来引用全局的

2012-08-30 22:09:42 1060

原创 下标符号[]不提供溢出检查

下标符号[]不提供溢出检查

2012-08-22 19:57:49 338

转载 QT 的信号与槽机制介绍

唐新华 (xhsmart@263.net), 软件工程师 QT 是一个跨平台的 C++ GUI 应用构架,它提供了丰富的窗口部件集,具有面向对象、易于扩展、真正的组件编程等特点,更为引人注目的是目前 Linux 上最为流行的 KDE 桌面环境就是建立在 QT 库的基础之上。QT 支持下列平台:MS/WINDOWS-95、98、NT 和 2000;UNIX/X11-Linux、Sun S

2012-08-21 16:14:00 428

转载 C++中vector的用法

注意,在使用前要包含vector对应的头文件:#includevector是同一种类型的对 象的集合,每个对象都有一个对应的整数索引值。和string对象一样,标准库负责管理存储元素的相关内存。我们把vector称为容器,是因为它可以包 含其他对象。一个容器中的所有对象都必须是同一种类型的。我们将在第9章更详细地介绍容器。使用vector之前,必须包含相应的头文件。本书给出的例子,都是

2012-07-26 17:17:14 950

原创 QT版本成功

花了半个月学习QT,并且把MFC中的程序用QT版本重写了一遍,遇到以下一些问题:1、字符集问题,unicode和ASCII还是比较混乱。2、导入贴图最好用QImage,而不是glaux库中的auxDIBImageLoad,因为QT不自带这个库,得加lib和.h文件,这个又比较麻烦,用QImage不错,但必须设置参数为RGBA,不是RGB,否则会出错。3、数组一定要定义好,要出现数组溢出

2012-07-10 11:03:35 1211 1

转载 C++ 参数按数值传递和按地址传递

参数按数值传递和按地址传递到目前为止,我们看到的所有函数中,传递到函数中的参数全部是按数值传递的(by value)。也就是说,当我们调用一个带有参数的函数时,我们传递到函数中的是变量的数值而不是变量本身。 例如,假设我们用下面的代码调用我们的第一个函数addition :int x=5, y=3, z;z = addition ( x , y ); 在这个例子里我们调用函数add

2012-07-01 15:49:12 3965

原创 数组溢出问题解决

报错:“0x10214556”指令引用的“0x3dc08cc7”内存。该内存不能为read。 出错原因找到了,前面定义数组元素最多为8000,但是导入的3DS模型点的个数有10000多,所以数组溢出。解决办法:在函数中读出点和面的个数,然后动态分配数组即可,省空间哦。另外指向数组的指针与数组名是等价的,如int *p=new int[n],可以用p[i]调用元素。C++基础薄弱啊。

2012-06-25 17:24:55 4280

转载 内存空间的划分

一、C/C++中内存区域的划分1、  栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、  堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、  全局区(静态区)(static)—,全局变量和静态变量的存

2012-06-25 17:14:43 2842 1

空空如也

空空如也

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

TA关注的人

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