自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 资源 (292)
  • 收藏
  • 关注

原创 在c++Builder中使用boost正则表达式实现的查找double和int类型的字符串,并实现StringToInteger和StringToDouble函数

直接贴出来代码,以供参考:// -以下为头文件定义#include"StringToNumber.h"#include//正则表达式的头文件// #include//其实上面的代码会自动包含此头文件// #include //其实上面的代码会自动包含此头文件// ----------------------------------------------------------

2012-07-30 17:24:48 1064

原创 Linux下如何修改ip地址

在Linux的系统下如何才能修改IP信息 用ifconfig修改,重启后会失效。直接修改配置文件:配置文件目录,不同的linux系统可能会有所不同,下面列出用过的几个目录:(1)/etc/sysconfig/network-s/ifcfg-eth0(2)/etc/network/interfaces A、修改ip地址 即时生效: # ifconfig e

2012-07-30 16:09:46 899

原创 linux find 使用

假设你忘记了httpd.conf这个文件在系统的哪个目录下,甚至在系统的某个地方也不知道,则这是可以使用如下命令:  find / -name httpd.conf    结果:etc/httpd/conf/httpd.conf如果你想要查找 /conf 这个目录 那么用命令:find / -type d -name "conf"结果:/etc/logw

2012-07-30 11:24:03 483

转载 详细解析boost中bind的实现 .

写在前面的话在C++11之后,std::bind是C++标准库的一个组件了。一开始想弄个C++11的实现来研究下,发现里面用到了可变参数模板(代码变得非常神奇).http://llvm.org/svn/llvm-project/libcxx/trunk/include/functional还是弄个原始点的boost的实现来研究下。话说网上关于boost::bind的实现的文

2012-07-28 10:44:15 822

原创 一些开源项目网址

基础网址:http://code.ijinshan.com/ http://search.csdn.net/CSDN搜索,CSDN还是有非常多的编程资源的,用它的搜索能搜出不少东西。代码类别也比较全面。http://snippets.org/简单实用的代码收集网站,强力推荐。比如你要找个DES加密,要找个数据压缩,找个INI文件操作的C代码等,均能手到擒来。http://w

2012-07-28 10:42:14 781

转载 STL源码剖析---红黑树原理详解

一、红黑树概述     红黑树和我们以前学过的AVL树类似,都是在进行插入和删除操作时通过特定操作保持二叉查找树的平衡,从而获得较高的查找性能。不过自从红黑树出来后,AVL树就被放到了博物馆里,据说是红黑树有更好的效率,更高的统计性能。这一点在我们了解了红黑树的实现原理后,就会有更加深切的体会。     红黑树和AVL树的区别在于它使用颜色来标识结点的高度,它所追求的是局部平衡而不是AVL

2012-07-27 14:54:51 4827

转载 程序员们的时间管理法则

软件开发是非常令人兴奋的工作,经过多年的工作,你不仅可以得到相应的报酬(随着工作经验增长)还会有其他晋升的机会。大多数人只关心保持头浮出水面。但这并不是我们所要追求的目标,那仅仅是我们在学校或者孩童时代的梦想?为了赚更多的钱,大多数人还会找额外的工作并且不太关注编程以外的东西。没有时间休息、没有时间和家人朋友小聚、除了工作还是工作。因此导致压力越来越大,对生活的不满足感油然而生。其实我

2012-07-27 11:19:18 1258

原创 完全反截屏

把一些高手的语录总结一下: 控制所有截屏软件肯定是不可能的。但可以用相当小的代价来禁止尽可能多的截屏。分析截屏软件的行为,可得出截屏基本有两种方式。1. 通过剪贴板2. 直接截取屏幕中的某一部分保存成图像文件针对以上两种可做如下的防护:1. 监控剪贴板变化 (SetClipboardViewer) ,发现剪贴板发生变化后,看剪贴板中是否有图片,如果有,清空它。2

2012-07-26 17:11:50 10392 1

转载 天时、地利、人和:大话OpenStack

【导读】《孙膑兵法·月战》:“天时、地利、人和,三者不得,虽胜有殃。” 我们可以把“云计算”当做一场没有硝烟的战争,云计算平台可以算是一场局部战争,OpenStack就像这场局部战争中一颗闪亮的“新星”。天时:亚马逊已经成为云计算领域的“霸主”,没有一家IT巨头愿意受制于亚马逊,而且使用亚马逊网络服务的云计算企业,抱怨最多的就是“用户被绑架,无法轻易转移数据”,OpenStack应运而生,时机

2012-07-26 16:28:44 2277

转载 CUDA编程模型:内核与线程层次概述

【IT168 技术】本章引入了CUDA编程模型背后的主要概念,方式是概述它们是怎样使用C语言表示的。更多的关于CUDA C的描述在第三章。        相关文章:        CUDA初探:从图形处理到通用并行计算        CUDA初探:通用并行计算架构和编程模型  本章使用的向量相加例子的完整代码和下一个例子可在SDK中的vectorAdd代码样本中找到。

2012-07-26 16:24:11 844

转载 CUDA编程模型:存储器层次和异构编程

【IT168 技术】存储器层次  在执行期间,CUDA线程可能访问来自多个存储器空间的数据,如图2-2所示。每个线程有私有的本地存储器。每个块有对块内所有线程可见的共享存储器,共享存储器的生命期和块相同。所有的线程可访问同一全局存储器。  相关阅读:  CUDA编程模型:内核与线程层次概述        CUDA初探:从图形处理到通用并行计算        CUDA初探

2012-07-26 15:36:24 1303

原创 Boost asio学习笔记—— 网络编程

boost库中的网络编程的例子比较复杂,不太好理解,所以,从网上找了一个简单点的例子。网址如下:http://blog.chinaunix.net/u3/93184/showart_1846119.html.经过修改,可以运行。服务器代码:Servier.cpp#includeboost/asio.hpp>#include boost/bind.hpp>#i

2012-07-19 13:40:11 727

转载 linux的线程同步机制

互斥锁尽管在Posix Thread中同样可以使用IPC的信号量机制来实现互斥锁mutex功能,但显然semphore的功能过于强大了,在Posix Thread中定义了另外一套专门用于线程同步的mutex函数。1. 创建和销毁有两种方法创建互斥锁,静态方式和动态方式。POSIX定义了一个宏PTHREAD_MUTEX_INITIALIZER来静态初始化互斥锁,方法如下: pthread

2012-07-19 13:25:12 588

转载 boost条件变量(condition_variable)wait操作传

本文也标题党了一回。因为在boost开发者眼里,这肯定不是bug,甚至算不上flaw,而是character,详见#2219 This works as designed 云云。如果搞懂原理后正确使用也一切OK,不过我觉得作为一个高质量的库,不应该对开发者提出这么高的要求,另外这个问题让我半夜调试鸡飞狗跳,难免带些情绪,所以姑且称其为bug吧。    先说几句题外话:条件变量是并发开发的一大利

2012-07-19 13:19:49 3937

原创 Boost Thread学习

下面先对condition_impl进行简要分析。condition_impl在其构造函数中会创建两个Semaphore(信号量):m_gate、m_queue,及一个Mutex(互斥体,跟boost::mutex类似,但boost::mutex是基于CriticalSection临界区>的):m_mutex,其中:m_queue相当于当前所有等待线程的等待队列,构造函数中调用Crea

2012-07-19 10:58:30 607

原创 Visual C++线程同步技术剖析:临界区,时间,信号量,互斥量

摘要: 多线程同步技术是计算机软件开发的重要技术,本文对多线程的各种同步技术的原理和实现进行了初步探讨。关键词: VC++6.0; 线程同步;临界区;事件;互斥;信号量;正文 使线程同步  在程序中使用多线程时,一般很少有多个线程能在其生命期内进行完全独立的操作。更多的情况是一些线程进行某些处理操作,而其他的线程必须对其处理结果进行了解。正常情况下对这种处理结果的了解应

2012-07-19 10:49:45 1993

转载 Boost.Interprocess使用手册翻译之六:同步机制(Synchronization mechanisms) .

2012-02-07 18:13 444人阅读 评论(0)收藏 举报六.          同步机制同步机制概述互斥量条件变量信号量升级互斥量通过移动语义转移锁文件锁消息队列 同步机制概述具名和匿名同步机制同步机制类型如前所述,如果对内存的访问不能有效的同步,则通

2012-07-19 10:23:49 1220

转载 学着站在巨人的肩膀上

boost线程库C++标准库没有涉及线程,在C++中,虽然不可能写出标准兼容的多线程程序,程序员可以使用特定操作系统提供的线程库来写出多线程程序来。可是,这至少导致两个突出的问题:操作系统普遍提供的是C库,在C++中使用要更小心,每个操作系统都有自己的一套支持多线程的库;另外,代码不标准,不可移植。Boost.Threads 可以解决这些问题。创建线程boost::thread 类

2012-07-18 16:52:24 613

转载 Libthreadpool

概述现在进程/线程的创建时间已经大大缩短,但是如果需要频繁的创建进程/线程,并且每个子任务处理时间又非常简短,则进程/线程不断的创建与销毁给系统带来的额外负担也是很大。预分配并发进程或线程技术可用于避免创建与销毁进程/线程所付出的代价,进程/线程一旦创建,就会持续运行。拿预分配线程来说,设计人员编写主程序时便预先创建一定数目的线程(线程池),当请求到达时,就从线程池中申请一个线程来处理

2012-07-18 15:55:58 598

转载 整合 Google 开源 C++ 代码

Google 开源了很多优秀的 C++ 程序库,本文介绍如何将其中几个整合到一起。本文涉及的 Google 库有:gflags - 命令行参数解析。可以完全用命令行来配置应用程序,省去配置文件。 gtest - C++ 单元测试框架 gmock - C++ 单元测试中用到的 mock glog - 日志库 protobuf - 高效的网络协议格式 还有第三方的 libunwind

2012-07-18 15:41:46 741

转载 C++开源库,欢迎补充

C++在“商业应用”方面,曾经是天下第一的开发语言,但这一桂冠已经被java抢走多年。因为当今商业应用程序类型,已经从桌面应用迅速转移成Web应 用。当Java横行天下之后,MS又突然发力,搞出C#语言,有大片的曾经的C++程序员,以为C++要就此沉沦,未料,这三年来,C++的生命力突然被 严重地增强了。主力原因就是开源的软件、基础软件(比如并发原生支持,比如Android必定要推出原生的SDK)

2012-07-18 15:40:04 895

转载 win32线程池代码(WinApi/C++) .

win32线程池代码(WinApi/C++)健壮, 高效,易用,易于扩, 可用于任何C++编译器 //说明, 这段代码我用了很久, 我删除了自动调整规模的代码(因为他还不成熟)/*******************************************************************  Thread Pool For Win32 *  VC++ 6,

2012-07-18 10:58:04 433

转载 转载一份C++线程池的代码,非常实用 .

#ifndef _ThreadPool_H_#define _ThreadPool_H_#pragma warning(disable: 4530)#pragma warning(disable: 4786)#include #include #include #include using namespace std;class ThreadJob  //工作基类{public:  //供线程池调

2012-07-18 10:56:46 703

转载 [C++][Thread] 转:线程池原理及创建(C++实现)

本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,通过该示例程序,我们会发现,通过该线程池框架执行多线程任务是多么的简单。为什么需要线程池 目前的大多数网络服务器,包括Web服务器、Email服务器以及数据库服务

2012-07-18 10:54:25 1292

原创 ps -aux出来的stat结果Ss,Sl,SN~~

ps 的参数说明ps 提供了很多的选项参数,常用的有以下几个:l 长格式输出;u 按用户名和启动时间的顺序来显示进程;j 用任务格式来显示进程;f 用树形格式来显示进程;a 显示所有用户的所有进程(包括其它用户);x 显示无控制终端的进程;r 显示运行中的进程;ww 避免详细参数被截断;我们常用的选项是组合是 aux 或 lax,还有参数 f 的

2012-07-12 11:12:39 41315

转载 boost::thread简要分析(2):线程同步

除了thread,boost::thread另一个重要组成部分是mutex,以及工作在mutex上的boost::mutex::scoped_lock、condition和barrier,这些都是为实现线程同步提供的。mutexboost提供的mutex有6种:boost::mutexboost::try_mutexboost::timed_mutexboost::recu

2012-07-10 14:54:11 3318

原创 Win32 应用程序移植为 64 位程序

将 Win32 应用程序移植为 64 位需要注意一些地方结构体内存对齐的问题对结构体内存布局有依赖的程序,可能在 32 位向 64 位移植时出现问题,例如:123456structs {     inta;     constchar* b;     intc; };

2012-07-06 09:41:52 877

原创 code iconv

/* Copyright (C) 2000 Free Software Foundation, Inc.   This file is part of the GNU ICONV Library.   The GNU ICONV Library is free software; you can redistribute it and/or   modify it under the terms

2012-07-05 15:23:59 677

原创 一则C++Unicode集与多字节转换函数使用。

这函数,使用的是标准C函数。需要头文件cstdlib和clocale。针对中文的unicode写的函数。        ///将中文Unicode转换为Ansi多字节字符串        /**            @param [out] paramDest 保存转换后的字符串            @param [in] paramSource 原始的Unicode字符串

2012-07-05 13:31:15 1776

原创 Linux头文件作用&信号signal处理函数

1、  一些头文件的作用::ANSI C。提供断言,assert(表达式):GCC。GTK,GNOME的基础库,提供很多有用的函数,如有数据结构操作函数。使用glib只需要包含:GCC。文件夹操作函数。struct dirent,struct DIR,opendir(),closedir(),readdir(),readdir64()等:ANSI C。字符测试函数。isdigit(

2012-07-04 14:51:03 5023

原创 有关defunct进程(僵尸进程)的处理原则

僵尸进程:就是已经结束了的进程,但是没有从进程表中删除。太多了会导致进程表里面条目满了,进而导致系统崩溃,倒是不占用其他系统资源。僵尸进程的查看:ps -ef出现:root     13028 12956 0 10:51 pts/2    00:00:00 [ls] 最后有defunct的标记,就表明是僵尸进程。产生的原因:每个Linux进程在进程表里都有一个进

2012-07-04 12:53:40 1818

原创 Linux僵尸进程产生及如何避免

僵尸进程是指的父进程已经退出,而该进程dead之后没有进程接受,就成为僵尸进程.(zombie)进程,僵尸进程消耗很小的计算机资源,但是Linux系统对运行的进程数量有限制,如果产生过多的僵尸进程占用了可用的进程号,将会导致新的进程无法生成。这就是僵尸进程对系统的最大危害。在fork()/execve()过程中,假设子进程结束时父进程仍存在,而父进程fork()之前既没安装SIGCHLD信

2012-07-04 12:49:16 662

BoostAsio-TCPAndUDP.zip

简单的网络通信,使用boost实现,tcp和udp。简单场景可以直接使用。 速度可以达到网络最值的80%

2019-10-11

深度学习Pytorch含源码

包含了深度学习Pytorch的相关书籍和源码,供大家参考。 入门学习的可以看一下。

2019-03-05

vc(2015sdk)_redist.x64

解决用Anaconda 安装python和tensorflow 环境,安装完成后 测试import tensorflow as tf 报如下错误的问题。

2018-11-27

python3.6.7-and-win7kb

python安装失败0x80240017 安装KB2999226更新补丁后, 可以正常安装python3.5. 此更新包在vs2015的patch包里有. Microsoft下载中心也有,这里列出的适用于win7 x86: Windows 7 更新程序 (KB2999226) x64: 用于基于 x64 的系统的 Windows 7 更新程序 (KB2999226)

2018-11-26

获取内存使用量

windows下获取资源占用的类

2018-08-22

实现WDM驱动的自动安装的完整工程

C++实现WDM驱动的自动安装的完整工程 C++实现WDM驱动的自动安装的完整工程 C++实现WDM驱动的自动安装的完整工程

2017-05-27

c++性能与设计模式资料[含代码]

常见设计模式的解析和实现(全部c++实现) 常见设计模式的解析和实现(全部c++实现) 性能优化书籍 boost网络编程 合集,仅供参考

2017-02-14

开源的FreeNOS

这是一个用C++实现的微内核的操作系统,各种宏内核中的服务作为一个独立的services在微内核中,基于消息的通信方式,这点其实跟mac内核中的mach那部分机制相似。 除了是一个操作系统的实现,另外从中也能很好的学习到OOP的设计方式,整个代码风格特别好,完全基于面相对象,还有一些常见的设计模式,在接触了这个开源项目之后,才了解,代码风格,注释,doxygen,scons,设计模式。 对于直接入手就啃Linux kernel的同学,个人觉得会门槛有点高,身体还不是特别棒的时候,直接攀登珠穆拉玛还是有点吃力的,可以先找个黄山爬爬。

2016-12-09

Upx源码【win linux】

Upx源码,可以通过vs2010可编译,很方便! 还包含一个linux版本,3.91,可以自己研究。

2016-11-29

DICOM 学习入门资料

DICOM 学习入门资料,是一个非常好的学习DICOM协议的入门材料, 中英文的,大家自己慢慢看吧。 强烈推荐!

2016-10-25

IPMIView_2.9.25

IPMI View是Supermicro公司为其板载IPMI卡开发的管理工具。IPMI卡具有无需依赖于主板、CPU、内存等硬件而独立运行的优势,可以在操作系统运行之前对主机进行Console级别的访问和操作,而Supermicro得IPMI 工具更可以远程挂载ISO、img等多种格式的镜像文件,为主机虚拟访问UFD、Floppy Disk、CD/DVD ROM提供解决方案。

2016-08-19

windows多线程编程技术与实例

本书通过众多实例介绍了如何实现Windows下的多线程编程,既重点介绍了Win32API下的多线程编程和MFC下的多线程编程,又介绍了多线程机制在网络编程、图形编程和数据库中的应用。本书每一章都从简单的多线程实例出发逐渐深入,紧紧围绕应用程序实例,向读者展示了利用多线程技术来编写高效、友好的Windows应用程序的方法,并对常用的Win32线程函数进行了深入详细的说明。本书共分8章,第l章介绍了多线程编程的基础知识;第2~5章通过实例阐明Win32下多线程的几种不同实现形式及多进程的实现机制,这是本书介绍的重点内容,也是读者学习后面几章内容所必须掌握的基础知识;第6~8章介绍了多线程技术在网络、图形处理和数据库中的应用。

2016-07-18

网络调试助手CM精装版

网络调试助手CM精装版3.3

2016-07-05

PythonAndWindebug文档

PythonAndWindebug文档

2016-05-25

C++调用MATLAB[vs2010]

C++调用Matlab的VS2010 code。 提前书案MATLAB并进行了mbuild -setup的环境设置,在VS项目里设置自己的MATLAB的库目录和包含路径。 里面包含三个项目:二个基于C++调用MATLAB的DLL动态链接库,一个基于C++调用MATLAB的引擎。

2016-05-18

PVS-Studio 6.00官方版(注册版)

已经使用过:vs2010 PVS-Studio 6.官方版 附带注册码: Name:pvs SerialNumber:B1TG-6CYJ-0A07-YX01 LicenseType:Site License LicenseValidThru:2099/12/31

2016-05-05

openCL编程指导源代码

OpenCL领域公认的权威著作,由OpenCL核心设计人员亲自执笔,不仅全面而深刻地解读了OpenCL规范和编程模型,而且通过大量案例和代码演示了基于OpenCL编写并行程序和实现各种并行算法的原理、方法、流程和最佳实践,以及如何对OpenCL进行性能优化,如何对硬件进行探测和调整。

2016-04-18

学习 FPGA 书籍分享

废话不说了,下面进入正题,学习FPGA经历了这么几个阶段: ①、Verilog语言的学习,熟悉Verilog语言的各种语法。 ②、FPGA的学习,熟悉QuartusII软件的各种功能,各种逻辑算法设计,接口模块(RS232,LCD,VGA,SPI,I2c等)的设计,时序分析,硬件优化等,自己开始设计简单的FPGA板子。 ③、NiosII的学习,熟悉NiosII的开发流程,熟悉开发软件(SOPC,NiosII IDE),了解NiosII的基本结构,设计NiosII开发板,编写NiosII C语言程序,调试板子各模块功能。 先来说说第一个阶段,现在主要的硬件描述语言有VHDL,Verilog两种,在本科时老师一般教VHDL,不过现在 Verilog用的人越来越多,其更容易上手(与C语言语法比较类似),也更灵活,现在的IC设计基本都用Verilog。像 systemC,systemVerilog之类的应该还在萌芽阶段,以后可能会有较大发展。鉴于以上原因我选择了Verilog作为我学习的硬件描述语 言。 其实有C语言的基础,学起Verilog的语言很简单,关键要有并行的概念,所有的module,assign,always都是并行的,这一点与软件语言有明显不同。这里推荐几本评价比较好的学习Verilog的书籍: ①、《verilog 数字系统设计教程》,这本书对于入门是一本很好的书,通俗易懂,让人很快上手,它里面的例子也不错。但本书对于资源优化方面的编程没有多少涉及到。 ②、《设计与验证Verilog HDL》,这本书虽然比较薄,但是相当精辟,讲解的也很深入,很多概念看了这本书有种豁然开朗的感觉,呵呵。 学习Verilog其实不用看很多书,基本的语法部分大家都一样,关键是要自己会灵活应用,多做练习。 Verilog语言学了一段时间,感觉自己可以编点东西,希望自己编的程序在板子上运行看看结果,下面就介绍我学习的第二个阶段。 刚开始我拿了实验室一块CPLD的开发板做练习,熟悉QuartusII的各种功能,比如IP的调用,各种约束设置,时序分析,Logiclock设计方 法等,不过做到后面发现CPLD的资源不太够(没有内嵌的RAM、不能用SignalTapII,LE太少等),而实验室没有FPGA开发板,所以就萌生 了自己做FPGA开发板的意图,刚好Cadence我也学的差不多了,就花了几天时间主要研究了FPGA配置电路的设计,在板子上做了Jtag和AS下载 口,在做了几个用户按键和LED,其他的口全部引出作为IO口,电路比较简单,板子焊好后一调就通了(心里那个爽啊...)。我选的FPGA是 cycloneII系列的EP2C5,资源比以前的FPGA多了好几倍,还有PLL,内嵌的RAM,可以试试SignalTapII,用内嵌的逻辑分析仪 测试引脚波形,对于FPGA的调试,逻辑分析仪是至关重要的。利用这块板子我完成了项目中的几个主要功能:RS232通信,指令译码,配置DDS,AD数 据高速缓存,电子开关状态设置等,在实践中学习起来真的比平时快很多,用到什么学什么动力更大。这个时候我主要看的数据有这几本感觉比较好: ①、《Altera FPGA/CPLD 设计(基础篇)》:讲解一些基本的FPGA设计技术,以及QuartusII中各个工具的用法 (IP,RTL,SignalProbe,SignalTapII,Timing Closure Floorplan,chip Editor等),对于入门非常好。 ②、《Altera FPGA/CPLD 设计(高级篇)》:讲解了一些高级工具的应用,LogicLock,时序约束很分析,设计优化,也讲述了一些硬件编程的思想,作为提高用。 ③、《FPGA设计指南--器件,工具和流程》:这本书看了他的目录忍不住就买了,这本书讲述了FPGA设计的各个方面,虽然每个方面都是点到为止,但能让你有个整体的概念,了解FPGA的所有设计功能,了解FPGA开发的整个流程。

2016-04-12

Cocos2dx 源码与实例

Cocos2d-x是一个开源的移动2D游戏框架,MIT许可证下发布的。这是一个C++ Cocos2d-iPhone项目的版本。Cocos2d-X发展的重点是围绕Cocos2d跨平台,Cocos2d-x提供的框架。手机游戏,可以写在C++或者Lua中,使用API是Cocos2d-iPhone完全兼容。Cocos2d-x项目可以很容易地建立和运行在iOS,Android,黑莓Blackberry等操作系统中。Cocos2d-x还支持Windows、Mac和Linux等桌面操作系统,因此,开发者编写的源代码很容易在桌面操作系统中编辑和调试。

2016-03-17

zlib 封装简单接口使用

实际应用中有时候会遇到需要处理 ZIP 压缩解压的情况,这时候我们有大概三种选择: 调用 rar.exe, unzip.exe 等 使用某现成库 完全手写 第一种虽然能完成任务,但是没法知晓结果。曾经有人对说,可以抓命令行输出结果来判断……这种依靠界面文字来进行精确判断的行为个人认为相当不靠谱。第三种,既然我是个“造轮主义”者,当然说好,但是现在我不了解 ZIP 格式,也不了解 ZIP 算法,所以这个日后再说。今天我们就来切切实实地用一次轮子。 ZIP 相关的库中比较有名的可能就是 ZLib 和 InfoZip(unzip60)了。InfoZip 我了解的不多,其外层接口似乎也不大好,一堆回调——回调是个很烦人的东西,专门用来打乱代码结构。另外,这个库也已经有好多年没更新了吧,太久的东西给人的感觉总是不太舒服。ZLib 最新版本是 1.2.5,今年 4 月 19 日出的。确切的说,ZLib 可能并不是一个针对 ZIP 文件的库,它只是一个针对 gzip 以及 deflate 算法的库。它提供了一个叫做 minizip (contrib\minizip) 例子来给出操作 ZIP 文件的方法。下文将从 ZLib 出发,归结出两个傻瓜接口: BOOL ZipCompress(LPCTSTR lpszSourceFiles, LPCTSTR lpszDestFile); BOOL ZipExtract(LPCTSTR lpszSourceFile, LPCTSTR lpszDestFolder);

2015-12-23

CrashRpt 源码

CrashRpt 是一个开源的查找C++程序崩溃的程序,形如的时候,调用了CrashRpt的钩子函数就可以生成崩溃的dmp文件,然后在开发的机子上(有pdb文件的)运行,就可以定位代码崩溃到哪一行。

2015-10-12

大规模c++程序设计【完成版】

大规模c++程序设计【完成版】

2015-05-07

DOOM3 源码

DOOM3的游戏完整源代码,经过编译完全可以执行。 ID TECH 4引擎 卡马克所著

2015-05-05

获取调用栈和MemoryLeak

获取调用栈和MemoryLeak调查

2015-04-21

基于FFmpeg的AVFilter例子

FFMPEG工程浩大,可以参考的书籍又不是很多,因此很多刚学习FFMPEG的人常常感觉到无从下手。因此特地制作了一个基于FFmpeg中的AVFilter的简单的水印叠加器。 本程序使用FFmpeg的AVfilter实现了视频的水印叠加功能。 可以将一张PNG图片作为水印叠加到视频上。 是最简单的FFmpeg的AVFilter方面的教程。 适合FFmpeg的初学者。 工程基于VC2010。 使用了2014.5.6版本的FFmpeg类库。

2014-06-09

libevent源码和一个小例子

http://blog.csdn.net/flyingleo1981/article/details/28400859 这个是文章,可以参考,有图有真相

2014-06-04

graph-viz 源码

graph-viz 源码

2014-04-21

OpenCL CUDA 例子

有限差分方法求解Poisson方程代码。包括四个主要函数:5、测试平台下的所有OpenCL设备,现实主要性能和参数;2、测试CPU计算效率;3、测试OpenCL C 在GPU上的运行效率;4、测试OpenCL C++在GPU上的运行效率;5、测试CUDA在GPU上的运行效率。 代码相当简单,可以用来简单测试计算平台的性能,也可作为CUDA和OpenCL的入门参考程序。

2014-04-18

OGRE教程 OGRE 入门教程

OGRE教程 OGRE 入门教程

2014-03-27

Google_Android开发入门与实践

基础知识: Android的系统架构和其操作系统一样,采用了分层的架构。从架构图看,android分为四个层,从上层到低层分别是应用程序层、应用程序框架层、Android运行时和库、linux内核……本文档带你很好的学习android基础知识,配合文档中给出的视频学习会有更好的效果! 开发入门实践书全文。

2014-02-26

深入浅出Google_Android

google android 开发 深入浅出Google_Android

2014-02-25

Android移动开发

完整版的android移动开发一本就够 完整版的android移动开发一本就够

2014-02-25

Android平台下通过JNI快速实现音视频通信

想要在Android平台下实现音视频通信,最快捷的方法是寻找开源项目或调用其他公司封装好的API

2014-02-25

pstools远程控制工具

sexec是一个远程执行工具,你可以像使用telnet一样使用它。 它的使用格式为: psexec //远程机器ip [-u username [-p password]] [-c [-f]] [-i][-d] program [argum ents] 它的参数有: -c <[路径]文件名>:拷贝文件到远程机器并运行(注意:运行结束后文件会自动删除) -d 不等待程序执行完就返回,(比如要让远程机器运行tftp服务端的时候使用,不然psexec 命令会一直等待tftp程序结束才会返回) -i 在远程机器上运行一个名为psexesvc进程,(到底什么用弄不明白) 假设我在远程机器ip有一个账号,账号名是:abc 密码是:123 比如想要用telnet一样在远程系统上执行命令可以打: psexec //远程机器ip -u abc -p 123 cmd 如果想要远程机器执行本地c:/srm.exe文件可以打: psexec //远程机器ip -u abc -p 123 -c c:/srm.exe 如果想要让远程机器执行本地上tftp服务端,(假设tftp服务端在本地c:/tftp32.exe),可以 打: psexec //远程机器ip -u abc -p 123 -c c:/tftp32.exe -d

2014-01-24

windows远程控制基本命令

windows远程控制基本命令。远程控制必须熟练的常用命令。

2014-01-21

depends 64位

depends 64位

2014-01-16

thrift源码

thrift源码

2014-01-03

Tcp-Ip详解(一、二、三)

Tcp-Ip详解(一、二、三)

2014-01-02

一个c++buffer的设计和实现

基本想法: 方法1: 1、使用默认缓存5M 2、默认线程使用的内存为128K,即最多默认支持40个线程 3、初始化申请一块5M内存,然后进行分割,线程使用的定义为GROUP,没一条日志使用的为ITEM 4、运行过程中进行动态管理,内存用完后申请新的空间,一次为5M 5、线程使用完一个group后可以在使用其他的group,且不限在相同的原子buffer。 可能的问题在于,多次申请的问题,经过测试基本可以用。 方法2: 1、使用默认缓存5M 2、默认线程使用的内存为128K,即最多默认支持40个线程 3、初始化申请一块5M内存,然后进行分割,线程使用的定义为GROUP,没一条日志使用的为ITEM 4、运行过程中进行动态管理,内存用完后丢失 5、线程使用完一个group后可以在使用其他的group,且不限在相同的原子buffer。 可能的问题在于支持的线程是有上线的。 欢迎你的建议。

2013-12-25

火车票猎豹浏览器

火车票猎豹浏览器

2013-12-25

空空如也

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

TA关注的人

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