自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fawdlstty的博客

个人博客地址:http://www.fawdlstty.com

  • 博客(33)
  • 资源 (8)
  • 收藏
  • 关注

原创 使用 C++20 实现异步网络访问

通过 libfv 实现c++20的异步网络访问,文章介绍了C++20异步、http客户端/服务器端、websocket客户端/服务器端的实现

2022-06-30 14:58:27 1045 1

原创 libfv:基于C++20的异步HTTP库

C++20,co_await,HTTP

2022-04-23 20:41:58 3914 3

原创 使用.NET5自制编程语言

自制编译原理自始至终都是非常难学的知识,虽然网上能找到各种各样的教程及文档,但也极少有开发者深入研究。这儿推荐一个基于.NET5的工具,Facc,通过极简语法描述文法,自动生成AST代码。<>...

2021-05-30 23:53:08 533 1

原创 ffmpeg完全教程

FFmpeg完全教程教程实时更新中。GitHub在线阅读:https://github.com/fawdlstty/FawCourse_FFmpeg目录序言引言起因目标读者第一章 视频基础颜色空间RGB颜色空间YUV颜色空间推荐资料第二章 音频基础第三章 FFmpeg 入门配置环境容器及编码容器图像编码音频编码forma...

2019-03-12 00:32:44 1613

原创 C++11:智能指针

智能指针,顾名思义,也就是自动回收内存的指针形式,不用程序员刻意去释放,提高软件开发效率,同时也会提高软件鲁棒性。C++11一共有4个智能指针,分别为auto_ptr、unique_ptr、shared_ptr、weak_ptr。其中auto_ptr由于存在设计问题,被标记为“已弃用”,将在未来某个C++版本中被移除。本文主要介绍其他三个指针形式。使用前首先包含 这个头文件1、unique

2015-10-30 10:45:25 2543 1

原创 C++11:多线程与锁

多线程是小型软件开发必然的趋势。C++11将多线程相关操作全部集成到标准库中了,省去了某些坑库的编译,真是大大的方便了软件开发。多线程这个库简单方便实用,下面给出简单的例子#include #include #include using namespace std;volatile int val;mutex mut;void icrement () { for (int i

2015-10-29 15:55:12 15809

原创 C++11:原子操作

在多线程开发中,为了确保数据安全性,经常需要对数据进行加锁、解锁处理。C++11中引入了原子的概念,简而言之就是访问它时它自动加锁解锁,从而使软件开发更为简便。原子可谓一个既简单又复杂的概念。简单到访问它时就跟单线程访问一块内存一样简单,复杂的地方在于它的实现涉及到各种内存模型,在优化中经常会遇到。下面给出一个简单的原子示例:#include #include #include

2015-10-29 15:03:49 5152

原创 C++11:lambda表达式

这个实现的效果类似于匿名函数,不想C++98/03那样一个函数所有人都能调用,不公开不必要的接口,提高程序安全性。首先来写个最简单的lambda表达式。[]{};对,5个字符就成为了一个lambda表达式了,虽然并没卵用,不过至少跨出了一步。这个lambda表达式实际上是精简后的表达式。不加以精简的话,原表达式应该像这样:[](){};看起来挺简单的,我也这么觉得

2015-10-29 10:38:04 992

原创 C++11:变长模板的迭代与递归扩展

迭代的运行效率始终强于递归,递归始终比迭代方便开发。变长模板属于C++11中比较复杂的技术,在此简单介绍下。#include using namespace std;templateint Sum (Args... args) { return sizeof...(args);}int main (int argc, char* argv []) { cout << Su

2015-10-28 14:47:47 2033

原创 C#扩展方法集合类

扩展方法是C#常用简化代码的手段,原本含义为在系统类的基础上增加自己的方法,比如"xxx{0}xx".format()这种用法,使得软件开发更为简便。在此贴个扩展方法类,用于技术交流

2015-10-26 17:17:45 1383

原创 Win32 服务控制

一个类,用于全方位控制系统服务。

2015-08-04 00:42:01 1006

原创 bootstrap charisma 入门学习笔记

Bootstrap,来自 Twitter,是目前最受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷。 它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架。而Charisma是一套全功能的,免费,会员质量的响应式HTML5管理员界面模板,基于"Bootstrap

2015-08-03 23:34:03 5280

原创 C++中Standard Template Library(STL)入门简要概况

STL在C++中算是相当简洁方便的东西了,但不知为何网上的教程都非常难,给新手入门造成了非常多的困扰。在此写篇新手入门教程。阅读此文需要有一定的C/C++基础,比如你要会用C语言的数组、链表等,会用C++类并且有一定了解等等,不会的还是别看了,就算你会用STL你也会发现有各种各样的bug。

2015-05-31 15:15:47 1344

原创 C++/SDK界面开发总结

对于不习惯用MFC的程序员来说,写界面应该是一个头疼的事情了。调用duilib等开源界面库的不讨论,本文主要说说Windows的原生界面功能开发,作为一篇总结,帮助新手入门。1、窗口主要通过新建资源窗口实现布局,调用就通过 DialogBox 和 CreateDialog 实现界面的显示。其中 DialogBox 为模态窗口, CreateDialog 为非模态窗口,简要说说区别:模态

2015-04-15 22:36:09 2829

原创 浅谈多线程编程以及锁的效率测试

锁在多线程应用上非常广泛,虽然这个影响效率,但这也是在不影响计算结果上最直观的方法了。多线程编程主要有四种思路,一种是加锁,一种是无锁式编程,一种是 STM  软件事务内存,一种是使用 Erlang 等函数式编程语言。

2015-04-15 21:56:44 2678

原创 VC硬盘读写功能封装

硬盘读写功能主要运用在三个方面,分别是MBR操作,数据恢复以及绕过Windows安全机制。以下是私藏多年的硬盘读写功能封装的代码。为了效率起见,读写最好一次性读/写512字节,也就是一磁道为佳。

2015-04-15 21:00:26 841

原创 一个C++解析HTML的库

HTTP协议使用广泛,相应的,C++在这块需求也开始增加。一个好的解析库可以达到事半功倍的效果,在此贴出我的解析库的代码,方便新手朋友们使用。

2015-04-15 01:58:18 11660 1

原创 关于node.js中使用json2.js

json2.js作为一个方便的javascript json序列化、反序列化工具广泛流传于网络,以其方便著称。但是有个问题,它并不是规范node.js标准的代码,无法直接使用,网上的方法更是比较奇怪,比如有几篇博客贴着node.js使用json2,但使用方法竟然是javascript的,可以拿来直接用么,太坑爹了。其实吧 将json2.js转为node.js库也简单,就在末尾加两行代码就行了。

2015-04-15 00:36:35 1397

原创 一个ASP.Net(C#)访问Cookie的封装

不多说,直接上代码using System;using System.Collections.Generic;using System.Text;using System.Web;namespace csTools { public class Cookie { public static void Set(string name, string value, HttpResp

2015-04-14 12:25:33 1210

原创 C#链接Sql Server的Sql Helper

作为网上资源最多的一类资料,C#的Sql Helper一搜一大片。不能说某某资料最好,而只能说某某资料最适合自己。在 这儿贴一个我自己的,可以直接用,也可以拿来作为自己Sql Helper开发的参考。

2015-04-13 18:32:55 1664

原创 Windows下的一个C++多线程库

这个作为大多数人诟病的东西,调用Win32 API复杂,调用开源库pthread、boost::thread竟然没有暂停,还得加锁实现,比较麻烦。还有就是网上的代码,给出了是给出了,但竟然不说说如何使用,看得我蛋疼。于是我就封装了一个库,觉得网上的库麻烦可以试试我这个,通过临界区加锁。如果同学们遇到什么问题可以提出来。

2015-04-13 01:28:55 2084

原创 关于Windows隐藏窗口的封装

隐藏窗口在Windows用的非常广泛,比如WSAAsyncSelect等等,需要窗口回调,假如窗口恰好使用的其他库,就容易导致一个问题:消息污染,也就是需要回调的消息与界面库本身需要使用的用户消息相同,导致消息无响应或者界面库异常。解决的思路通常是创建一个隐藏窗口,设置主窗口为用户使用的窗口后,关闭主窗口同时也会自动关闭临时窗口自身,简单粗暴。

2015-04-13 00:45:47 1134

原创 node.js/express.js新手快速入门及搭建MVC项目

node.js作为服务器端强大的后台语言,怎样牛逼我就不多说了,其他博客上面有。本文作为一篇入门级学习总结,供没有node.js基础的同学们学习,不足之处欢迎指正。另外在学node.js之前我几乎是完全不懂啥叫MVC,搭建了一个项目之后豁然开朗。在此写一篇博客以帮助后来的人快速学习。首先是需要vs2013,编译环境任选,不过照目前来看vs2013作为ide最方便。然后需要下载的东西,由于比较零

2015-04-12 16:07:16 2514

原创 Windows下C++实现编码转换(SDK、MFC)

很多时候,一些小功能完全可以封装成库供调用,但很多时候网上给出的都是教程,而不是现成可使用的库。这就造成一个问题:实现一些简单的功能也得学大半天,严重影响工期。这儿我直接给出编码转换的源代码以及调用方法。供朋友们使用。

2015-04-12 13:43:03 908

转载 C++资源[【干货】国外程序员整理的 C++ 资源大全]

关于 C++ 框架、库和资源的一些汇总列表,由 fffaraz发起和维护。内容包括:标准库、Web应用框架、人工智能、数据库、图片处理、机器学习、日志、代码分析等。标准库C++ Standard Library:是一系列类和函数的集合,使用核心语言编写,也是C++ISO自身标准的一部分。Standard Template Library:标准模板库C POSIX l

2015-03-24 23:05:21 1216

原创 深度研究C语言变长函数

关于C语言的变长函数,首先使用 stdarg.h 头文件的定义实现:#include #include int sum(int num, ...){ int sum = 0; va_list ap; va_start(ap, num); for (int i = 0; i < num; i++) { sum += va_arg(ap, int); } va_end

2014-01-14 17:52:24 911

原创 关于对C++不支持自动垃圾回收的探讨

总所周知,C++是一个不支持垃圾自动回收的编程语言,在实际编程中C++常常因为内存泄漏而引发的问题不在少数。但这真的是C++的缺点吗?  首先,我们来看看Java的自动垃圾回收。Java使用多线程技术,在后台有一垃圾回收线程,有最低的中断值,因此只能在其他线程休息时才开始执行。但它并不是在其他线程休息时就一定能执行,激发它执行的有两个条件:一是程序可分配内存达到最大值,可能是系统内存资源不足等

2014-01-08 16:45:18 942

原创 双缓存技术

偶然间在一次中国象棋游戏编写(源代码在http://download.csdn.net/detail/fawdlstty/5766599下载)中,使用到了一个技术:双缓存技术,我觉得有必要说明一下。双缓存技术主要解决闪屏问题而出现,但我最近请教一位大神时才知道(汗。。。)。在我这次游戏编写中,出现了一个BUG,就是屏幕不停的闪(我使用SetTimer定时调用InvalidateRect刷新

2013-07-17 00:03:29 1085

原创 UPX脱壳总结

我近期研究了一下UPX壳的脱壳方法,下面给出脱壳示例:UPX作为一款元老级PE加密壳,在以前的那个年代盛行,著名病毒【熊猫烧香】就是使用这款加密壳。现在我们一起来脱UPX壳来揭开它的神秘面纱。首先,PEiD载入含UPX壳的程序,结果如下:UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo然后用OD载入,OEP如下:

2012-12-19 16:00:14 16127

转载 VC++ 网络程序 自带头文件错误

不知道大家有没这种经历,写了一个网络程序,一编译,吓,几十上百个错误,真是恐怖啊,我就遇到过N次了。恐怖的错误数量,加上全部是自带头文件的错误,错误位置也不好找,微软的BUG真是害死人啊。我最近发现了一个博客中写道:今天在帮她调试一个网络程序时,发现了一个奇怪的问题:就是假如包含头文件的顺序写成:#include #include 则程序没有任何编译错误!但假如我把

2012-11-29 14:25:48 896

原创 C++抓包软件 纯SDK

最近写了一个抓包软件,C++写的,VS2008工程以下是软件的代码及讲解首先对于主函数,int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd){ ::hInstance = hInstance; static HWND hPrev; hP

2012-11-25 14:46:51 4339 4

原创 用汇编构造__stdcall的sprintf函数

使用汇编构造sprintf函数。我没有去逆向sprintf函数,主要是过程太多了,并且只要知道运算结果就能大概推算出过程了。以下构造并不完整,但能实现sprintf函数大多数功能,比如字符串中的'%%'解析为'%','%x'解析为十六进制单字节数,'%X'解析为十六进制双字数,'%d'解析为十进制数,其他的出于时间关系,我就没写了。另外,为了方便调用,我将过程写为__stdcall调用

2012-08-25 08:23:05 1141

原创 Visual C++界面美化(1)

Visual C++界面美化 之 使用Windows XP风格的对话框你是否在写程序时苦于写不出漂亮的界面而苦恼?现在我们一起来研究研究怎么才能既简单又方便的写出漂亮的界面吧 首先新建一个文本文档,复制以下代码,     processorArchitecture="x86"     version="5.1.0.0"     type="win32"

2012-08-12 21:55:43 3851

中国象棋源代码

使用GdiPlus+双缓存技术编写的中国象棋游戏示例

2013-07-16

3D场景载入示例

使用Autodesk 3Ds Max创建3D场景,然后使用VS2008编写代码载入3D场景的示例

2013-04-21

特斯拉线圈测试版程序

特斯拉线圈测试版程序,此程序为测试版,麻烦大神们帮忙测试一下,有问题或需要改进的地方请留言,我会尽快写出完整版

2013-01-30

一个简单的数据包捕获程序

一个简单的数据包捕获程序,分享源代码,供大家交流交流

2012-11-28

OpenGL简单DEMO示例

OpenGL简单DEMO示例,界面不是很友好哈,对OpenGL的简单使用,和初学OpenGL的童鞋交流交流,内附完整代码及示例程序

2012-08-20

关于避免VB精简版的控件许可证不可用的问题

下载后解压到一个目录下,然后运行VBC6.exe(解压目录下),然后在VB工程中引用那三个dll文件,就OK了。

2012-07-02

Visual Basic 6.0 精简版

VB6精简版,这个不解释了吧,你们都懂得.

2012-07-02

API函数中文参考大全

API函数中文参考大全 本文档详细介绍了关于各类API的使用及注释

2012-07-02

空空如也

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

TA关注的人

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