自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

若歌的博客

学无止境,滴水石穿

  • 博客(92)
  • 资源 (12)
  • 收藏
  • 关注

原创 URL字符解码

例如:https%3A%2F%2Fwww.example.com%2F%3Fparam%3Dvalue%26key%3D%E4%B8%AD%E6%96%87。param=value&key=中文。

2023-09-22 16:50:08 167

原创 小试梯度下降算法

【代码】小试梯度下降算法。

2023-07-28 16:44:44 175

原创 udp-select的使用

【代码】udp-select的使用。

2023-07-19 14:47:22 600

原创 编译相关笔记

命令可以确保在新的环境中重新生成所有必要的文件,以便成功地构建软件包。在使用GNU Autotools工具链构建软件包时,通常需要在源代码目录中运行此命令。是一个常用的命令,用于重新生成GNU Autotools工具链中的各种文件,以便在新的环境中构建软件包。注:直接使用configure进行编译时环境中各种版本软件不一致报错时,可以使用此命令进行工具配置文件更新。

2023-06-20 17:13:42 134

转载 修正linux libc.so.6错误导致ls、rm等命令不能使用

不删除libc.so.6,改变软链接指向:ln -sf libc-2.33.so libc.so.6,系统命令都不能使用。LD_PRELOAD与后面跟的命令rm 、ln等必须在同一行,不可以先执行LD_PRELOAD后再执行ln -s。编译升级glibc时修改libc.so.6链接,导致系统异常。注:不要关机,关机后可能无法进入系统了。

2023-06-01 15:36:43 433

原创 QTreeWidget表头拉伸宽度自适应导致长度显示有遮挡

Qt-QTreeWidget使用

2022-09-01 11:23:20 1785 1

原创 操作系统---银行家算法

题目:代码:#include<iostream>using namespace std;#define MAX_PROCESSNUM 5 //最大线程数#define MAX_RESOURCE 4 //资源种类 (A B C D)/*单个进程的最大需求矩阵*/int Max[MAX_PROCESSNUM][MAX_RESOURCE] = { {0,0,1,2},{1,7,5,0},{2,3,5,6},{0,6,5,2},{0,6,5,6} };/*系.

2021-12-08 14:06:08 327

转载 屏蔽CSDN博客广告的油猴脚本

1.安装油猴插件:Greasy Fork - 安全、实用的用户脚本大全2.重启浏览器,打开油猴-管理面板,点击 + ,然后复制如下脚本,保存即可。新增内容 : 去除head头广告// ==UserScript==// @name 干掉CSDN广告// @namespace http://your.homepage/// @version 0.1// @description 0-0// @author You// @match

2021-11-11 09:53:56 2300

原创 QPushButton的标签提示样式

思路:QPushButton继承于QWidget,可以将其看做一个QWidget,在其上放置一个Qlabel进行布局即可。QPushButton* btn = new QPushButton(this);// 设置label为红色圆形QLabel* lab = new QLabel(btn,"123");const QString label_style = "min-width:40px;min-height:40px;max-width:40px;max-height:40px;

2021-07-26 09:29:21 408

原创 QT布局的控件拉伸

大小策略与拉伸因子之间的关系若部件的拉伸因子大于0,则按照拉伸因子的比例分配空间;若拉伸因子为0,则只有在其他部件不需要空间时才会获得空间;也就是说若一些部件拉伸因子大于0,而一些部件拉伸因子为0,则只有拉伸因子大于0的部件会被拉伸,而拉伸因子为0的部件不会被拉伸。若所有部件的拉伸因子都为0,则按照大小策略的规则对部件进行拉伸。注意:若部件的大小策略为Fixed,则即使设置了拉伸因子,该部件也不会被拉伸。以上规则可总结为,拉伸因子会使大小策略不起作用或失效(除了Fixed策略外)除QS...

2021-07-21 16:48:52 1761

原创 QMessageBox设置窗体大小

#include<QMessageBox>#include<QLabel>class MyMessageBox:public QMessageBox {public: MyMessageBox(Icon icon,const QString & title, const QString & text, StandardButtons buttons = NoButton, QWidget * parent):QMessageBox(icon,tit.

2021-07-21 16:11:02 4536

原创 QListWidget设置复选框大小

Qss样式设置QListWidget*widget = newQListWidget(this);widget->setViewMode(QListView::ListMode);widget->setStyleSheet("QListWidget::indicator{height:20px;width:20px;}"//设置复选框大小"QListWidget::item{background-color:white;color:black;}""QListWidget::.

2021-07-20 17:02:49 1849 1

转载 c++根据关键字查找文件

#include <iostream>#include <string>#include <string.h>#ifdef _WIN32#include <io.h>#else#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>#include <dirent.h>#endifusing namespace std;.

2021-07-20 09:09:31 1736

转载 CString字符串分割 AfxExtractSubString _tcstok

第一种:AfxExtractSubString函数原型:BOOL AFXAPI AfxExtractSubString ( CString& rString, LPCTSTR lpszFullString, int iSubString, TCHAR chSep = '\n');

2021-06-01 15:05:08 1665

转载 boost::scoped_array

1.简介    scoped_array很像scoped_ptr,它包装了new[ ]操作符(不是单纯的new)在堆上分配的动态数组,为动态数组提供了一个代理,包装可以正确地释放内存。 2. scoped_array 分析   scoped_array 的类摘要如下所示(这里列出重要部分): template<class T> class scoped_ar...

2021-05-12 10:12:18 316

原创 FFmpeg-AVFrame RGB32转BMP

先用ffmpeg将图像进行翻转,得到RGB32的AVFrame,然后将RGB32图像转为BMP。翻转过程:https://blog.csdn.net/qq_36568418/article/details/113563986BMP格式详解:https://blog.csdn.net/nicholas_duan/article/details/90717599转换过程代码:// bpp->BMP图像的色深,即一个像素用多少位表示,常见有1、4、8、16、24和32// 例 RGB32

2021-02-02 16:58:35 745

转载 FFmpeg对颠倒的RGB图像翻转显示

转载:https://blog.csdn.net/zhoubotong2012/article/details/103304698很多使用FFmpeg做解码的用户都可能遇到过一个问题,他们对解码出来的图像转为RGB格式之后显示图像是颠倒的。有些用户对其原因不大明白,其实原因跟RGB图像的存储方式有关。RGB图像即RGB位图有两种存储方式:一种是从上往下扫描,另一种是从下往上扫描。从上扫描的图像第一行的首地址即为图像Buffer的起始地址,而从下往上扫描的图像第一行的首地址为:buffer_d

2021-02-02 16:30:03 837 2

原创 FFmpeg+MFC动态桌面(三)

后记总结:音视频同步音视频同步过程中(将视频同步到音频),最重要就算是pts的计算,以及时延的处理音频的pts计算:(音频做参考时钟)//获取当前AVPacket的ptsif (pPacket.pts != AV_NOPTS_VALUE){ audio_clock = av_q2d(stream->time_base) * pPacket.pts;}//由于一个packet中可以包含多个帧,packet中的PTS比真正的播放的PTS可能会早很多,//可以根据Sample

2021-02-01 17:50:36 254 3

原创 FFmpeg+MFC动态桌面(二)

对于音视频文件的解码,ffmpeg无疑是很好的选择,对于ffmpeg雷神又不得不提雷神博客地址:https://blog.csdn.net/leixiaohua1020/category_1843731.html另附一个ffmpeg的简单demo地址:http://dranger.com/ffmpeg/tutorial02.html最开始采用了最简单的音视频解码流程,将音频视频同时解码显示输出,但是当视频的分辨率达到1920*1080时,视频的解码转换速度开始变低,此时音频的卡顿听起来就很明显,

2021-02-01 16:57:04 317

原创 FFmpeg+MFC动态桌面(一)

蛰伏了半年,啥事也没干成,惨淡~一直以来比较感兴趣stream上的 Dynamic Wallpaper,现在整好有时间把它搞了搞,打鱼晒网的花了差不多两周,这里总结一下,感兴趣的小伙伴可以参考,这里留作笔记。项目内核基于FFmpeg+SDL解码音视频,用MFC封装做了个界面,VS2013开发。目前测试通过 Win7 Win10 Win8未测试。talk is cheap,show me the code!首先了解一下windows桌面:https://jrhar.blog.csdn.

2021-01-31 22:48:15 246

原创 数据结构-内部排序算法

#if 0//各种排序算法实现以及时空复杂度等问题#include<stdio.h>#include<stdbool.h>#include<malloc.h>/***插入排序****/ //基本思想:每次将一个待排序记录按其关键字大小 //插入前面已经排好序的子序列中,直至全部插入完成//直接插入排序 //算法时间复杂度O(n^2),序列基本有序的情况下最好可以达到O(n)//算法空间复杂度O(1)//查找总比较次数以及移动次数约为 n^2.

2021-01-04 17:58:57 140

原创 二叉树部分算法代码

#if 1#include <stdio.h>#include <stdbool.h>#include <malloc.h>#include <math.h>//树形定义typedef struct BitNode{ char data; struct BiTree*lchild;//左子节点 struct BiTree*rchild;//右子节点}BiTree;//单链表节点定义typedef struct LinkNode.

2021-01-04 17:52:44 195 1

原创 数组的边缘检测问题《一》

题目描述Ada不喜欢学数字,却喜欢玩游戏,看着她的小手指在手机屏上戳来戳去,顿时感觉祖国的游戏事业有了未来.最近她喜欢上清障碍的一款游戏.游戏是一个5行4列的方格阵列,有些格子有障碍物,有些没有,过关是要求所有的障碍物被清除.Ada只能在没有障碍物的格子放置炸弹,炸弹会清除东南西北四个方向上的相邻格子的障碍物.也就是,如果无障碍物的格子座标是(x,y),则(x+1,y),(x-1,y),(x,y+1),(x,y-1)四个相邻格的障碍物(如果有的话)都会清除,座标越界的情况不需要考虑.为了...

2020-05-18 15:05:33 382

转载 window 编程 -- Beep函数之祝你生日快乐!

#include <Windows.h>int main(){ MessageBeep(MB_ICONHAND); MessageBeep(MB_ICONEXCLAMATION); MessageBeep(MB_ICONASTERISK); //system("pause"); while (1) {#if 1 Beep(523, 200); Beep(523, 200); Beep(578, 400); Beep(523, 400); Beep(698,.

2020-05-14 11:07:36 1929

原创 C++环状队列(数据缓冲区)

头文件:#include <mutex>#include <atomic>class CBuffer{public: CBuffer();//缓存一百万数据 ~CBuffer(); void Init();//初始化 void Reset();//重置标志位 bool Write(char*buf, int len); bool Read(char*buf, int len);private: std::atomic_int w_index;//写指针

2020-05-13 11:06:30 601

原创 c11 模板元编程---斐波那契数列以及求最大数

参考博客:https://www.cnblogs.com/qicosmos/p/4480460.html#include <iostream>#include <type_traits>using namespace std;//斐波那契数列template<int T>struct Fibonacci_1{ enum { res = Fibonacci_1<T - 1>::res + Fibonacci_1<T - 2>::

2020-05-12 10:05:27 697

原创 C++ WinAPI FTP客户端

Win32 API函数:参考链接:https://blog.csdn.net/cddchina/article/details/38727545InternetOpen 初始化 Win32 internet InternetConnect 打开一个FTP, HTTP, or Gopher 应用会话 FtpCreateDirectory 在服务器上建立一个新的目录 FtpRemo...

2020-05-01 11:18:41 795

原创 c++正则表达式限定数据

限定0-2048中的整数#include <iostream>#include <string>#include <regex>using namespace std;int main(){ //regex reg("^(0?[1-9])$");//|(0?20[0-4][0-8]) regex reg("([1-9])|([1-9][0-...

2020-04-28 13:12:07 365

转载 c++常用正则表达式汇总

正则表达式Regex(regular expression)是一种强大的描述字符序列的工具。在许多语言中都存在着正则表达式,C++11中也将正则表达式纳入了新标准的一部分。一、校验数字的表达式数字:^[0-9]*$ n位的数字:^\d{n}$ 至少n位的数字:^\d{n,}$ m-n位的数字:^\d{m,n}$ 零和非零开头的数字:^(0|[1-9][0-9]*)$ 非零开头的最...

2020-04-28 11:59:53 1816 1

原创 c++重载流运同时实现endl方法

将信息写入文件,可作为简单日志类#include <iostream>#include <fstream>using namespace std;class LOG{public: LOG(void); ~LOG(void);public: bool Init(const char*file, const char*mode); //第一个co...

2020-04-17 15:38:48 642

原创 c++ 获取时间戳 与 时间戳转化为时间

//获取系统时间戳毫秒级std::string GetTimeStamp(){ time_t curtime = time(NULL); unsigned long long time = (unsigned long long)curtime; return std::to_string(time);}//时间戳转化为时间 毫秒级std::string Stamp2Time...

2020-04-14 16:19:07 12234 1

原创 c++ 网络字节转换为原始数据 以及 原始数据打包为网络字节序

/*拼接字节转化为long64param1: 数组地址param2: 起始字节下标param3: 结束字节下标return: 拼接值*/unsigned __int64 Hex2long(BYTE *hex_arr, int s, int e){ unsigned __int64 ret = 0i64; for (int i = s; i <= e; i++) {...

2020-04-14 16:10:13 514

原创 hiredis 异步-发布订阅模式

redis真的是对c++太不友好了,官方指定文件只能使用同步模式,对于异步模式的编译设置一点都不带提的。hiredis的异步实现是通过事件来分发redis发送过来的消息的,hiredis可以使用libae、libev、libuv和libevent中的任何一个实现事件的分发,网上大部分案例都是选用libevent。而libevent我下载编译完成后,加入到工程中,hiredis还是各种报错找不到...

2020-04-10 14:16:54 2095 4

原创 c11 decltype与auto

#include <iostream>#include <cstdarg>#include <vector>using namespace std;template<typename T, typename D>auto Add(T t, D d)->decltype(t+d) //指明返回类型{ return t +...

2020-04-01 17:12:12 153

原创 boost 序列化(二进制/文本)

文本模式:将vector数组序列化#include "boost/archive/text_oarchive.hpp"#include "boost/archive/text_iarchive.hpp"#include "boost/archive/binary_iarchive.hpp"#include "boost/archive/binary_oarchive.hpp"#inc...

2020-04-01 16:42:32 1698

原创 C++ hiredis 发布订阅模式

redis 订阅者#include <iostream>#include <stdlib.h>#include <string.h>#include "hiredis\hiredis.h"using namespace std;int main(){ //1、连接Redis服务器 redisContext *context = redis...

2020-03-31 15:29:05 2840 1

原创 C++精确到小数点后两位取值

借助Round()四舍五入函数: #include <iostream>#include <string>using namespace std;int main(){ string str = "2.86923e-010"; double qwe = std::stod(str); double ada = round(qwe * 100) / ...

2020-02-28 14:26:31 5785

原创 win7旗舰版配置FTP- 添加用户

配置ftp部分可以参考:https://blog.csdn.net/weixin_40836026/article/details/80436608以下记录添加FTP登录账户:一、创建新用户右键-计算机,选择 -管理,在弹出界面选择 本地用户和组展开项中选择 用户右键空白处,新用户填写相应信息,注意勾选密码永不过期,点击创建。二、配置ftp文件夹权限...

2020-01-09 13:57:56 1469 1

转载 [C++, Basic] C++全局对象构造析构顺序

/* * * Date: 2019.09.07 * */#ifndef _H_H_OBJ_DEF_H_H_#define _H_H_OBJ_DEF_H_H_#include <iostream>class ObjA{public: ObjA() { std::cout << "Construct ObjA" << std::e...

2019-12-07 10:50:18 226

转载 如何通俗易懂的理解卷积?

知乎真是大神众多,建议去看原文,这里仅作记录。链接:如何通俗易懂的理解卷积?作者:palet对卷积的困惑卷积这个概念,很早以前就学过,但是一直没有搞懂。教科书上通常会给出定义,给出很多性质,也会用实例和图形进行解释,但究竟为什么要这么设计,这么计算,背后的意义是什么,往往语焉不详。作为一个学物理出身的人,一个公式倘若倘若给不出结合实际的直观的通俗的解释(也就是背后的“物理”意义...

2019-11-26 10:36:56 764

CListctrl.exe

MFC-CListCtrl重绘,添加按钮到单元格,很久以前写的代码,修复了一个内存泄漏,代码很烂,大家看看思路自己优化一下就好~

2021-10-19

VS2010黑色主题工具包.rar

vs2010黑色主题安装包,需要的私信免费

2021-06-02

notepad++外加两个插件json/hex

notepad++外加两个插件,json以及hex

2021-05-20

FFmpeg+SDL的动态桌面,win7,win10已测试

VS2013 FFmpeg+SDL 源码,有问题的兄弟可以私信我~

2021-01-31

Live555+Gpac.rar

windows编译的live555库,采用vs2010编译,win32平台,测试使用无问题。

2019-09-30

Test_LiveGpac.rar

Windows下的Gpac编译库,包括头文件,lib以及dll文件,vs2010测试无问题。 有需要请直接私信我!

2019-09-30

一个开源的FFT算法库,包含几个计算音频数据的函数,用来做音频解析实现求取幅度值。

一个开源的FFT算法库,包含几个计算音频数据的函数,用来做音频解析实现求取幅度值。 一个开源的FFT算法库,包含几个计算音频数据的函数,用来做音频解析实现求取幅度值。 一个开源的FFT算法库,包含几个计算音频数据的函数,用来做音频解析实现求取幅度值。 一个开源的FFT算法库,包含几个计算音频数据的函数,用来做音频解析实现求取幅度值。

2019-06-12

SDL+FFmpeg的音频demo

借助雷神的程序,又查了很多资料,把程序中可能会出现问题的地方重点做了标注,以及改动方法。作为自己的经验积累。

2018-05-11

ffmpeg+SDL2.0简单是视频播放器

仿照雷神代码编写,添加了详细注释,详情可以查看雷神博客。多多学习,交流。

2018-04-24

MFC截取窗体图片并保存BMP

VS2010开发环境,具体代码详见程序,关于BMP位图格式可以搜集一下网上资料进行了解

2018-04-21

MFC动态刷新窗体背景,并且以BMP方式截图保存。

简单动态显示窗体背景,采用定时器刷新,点击截图可以截取当前屏幕显示图片并保存BMP格式

2017-12-06

jrtplib编译库minGW32+qt

折腾了好久终于算是弄好了,自己编译确实可以学到很多东西,下载之后将文件中的lib跟include拷到一起放到工程文件中 pro文件添加动态库就可以使用了,测试时端口号须为偶数,保持一致。

2017-02-23

空空如也

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

TA关注的人

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