
C++
文章平均质量分 83
几百人在爱
这个作者很懒,什么都没留下…
展开
-
在C++中使用CPU ID指令获得CPU信息
<br /> <br />1、什么是cpuid指令<br /> CPUID指令是intel IA32架构下获得CPU信息的汇编指令,可以得到CPU类型,型号,制造商信息,商标信息,序列号,缓存等一系列CPU相关的东西。<br />2、cpuid指令的使用<br /> cpuid使用eax作为输入参数,eax,ebx,ecx,edx作为输出参数,举个例子:<br /> __asm<br /> {<br /> mov eax, 1<br /> cpuid<br /> ...<br /> }<b转载 2011-05-16 12:01:00 · 1250 阅读 · 0 评论 -
Linux and windows Porting
// 根据本人的经验胡乱写写:// linux下获得可用磁盘空间大小采用: string sCmd = "df -m /usr/local | awk { if(NR == 2) print $4 }"; string sResult = pipeIPC(sCmd); pipeIPC()如下:string pipeIPC(const string& command)转载 2011-06-07 21:30:00 · 783 阅读 · 0 评论 -
C语言常用排序全解
/*=============================================================================相关知识介绍(所有定义只为帮助读者理解相关概念,并非严格定义):1、稳定排序和非稳定排序 简单地说就是所有相等转载 2011-09-19 17:05:58 · 558 阅读 · 0 评论 -
C++各大有名库的介绍
C++各大有名库的介绍在C++中,库的地位是非常高的。C++之父 Bjarne Stroustrup先生多次表示了设计库来扩充功能要好过设计更多的语法的言论。现实中,C++的库门类繁多,解决的问题也是极其广泛,库从轻量级到重量级的都有。不少都是让人眼界大开,亦或是望而生叹的思维杰作。由于库的数量非常庞大,而且限于笔者水平,其中很多并不了解。所以文中所提的一些库都是比较著名的大型库。转载 2011-12-05 17:05:26 · 789 阅读 · 0 评论 -
c++文件复制
<br />转帖,转帖位置忘了<br />使用C++标准程序库的输入输出流(I/O Stream)复制文件,存在许多的方法,<br /><br />方法一:逐个字符复制<br /><br />#include < fstream ><br /><br />std::ifstream input("in",ios::binary);<br />std::ofstream output("out",ios::binary);<br />char ch;<br /><br />while (i转载 2011-05-18 21:34:00 · 895 阅读 · 0 评论 -
Zlib解压缩示例
先上代码,压缩包的文件结构解析: zip=unzOpen(resItem->filename); if(0==zip) return false; done=unzGoToFirstFile(zip); while(done==UNZ_OK) { unzGetCurrentFileInfo(zip, &file_info, szZipName, sizeof(szZip转载 2011-06-02 09:42:00 · 7808 阅读 · 1 评论 -
vs2005下的dirent.h
<br />dirent.h是gcc下的一个头文件,而在VS2005中是没有的。这个文件中封装了几个对目录进行操作函数:<br />static DIR *opendir (const char *dirname);<br />static struct dirent *readdir (DIR *dirp);<br />static int closedir (DIR *dirp);<br /> 对于在linux->windows之间进行程序移植来讲常常会造成一些困扰,在网上仔细搜了一下,发现原来转载 2011-01-31 16:58:00 · 845 阅读 · 0 评论 -
使用zzip和minizip解压缩文件
#include #include #include #include #include #include #ifdef _DEBUG#pragma comment( lib, "zlib_d.lib")#pragma comment( lib, "zzip_d.lib")#pragma comment( lib, "minizip_d.lib")#else#pragma comment( lib, "zlib.lib" )#pragma comment( lib, "zzip.lib" )#pragma转载 2011-05-18 18:44:00 · 5533 阅读 · 2 评论 -
boost.property_tree使用示例
下面是一个使用boost.property_tree来解析XML/INI文件的简单示例。使用boost.property_tree来作为配置文件的解析工具非常合适.#include #include #include #include #include #include #include #include #include #include #include #include int main( int argc , char *argv[] ){转载 2011-05-10 14:06:00 · 4002 阅读 · 0 评论 -
zlib 压缩文件
<br />/*zlib 的z_stream结构*/typedef struct z_stream_s { Bytef *next_in; uInt avail_in; uLong total_in; Bytef *next_out; uInt avail_out; uLong total_out; char *msg; struct internal_转载 2011-05-20 16:22:00 · 1252 阅读 · 0 评论 -
fstream如何打开中文路径 - [C/C++]
<br />版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明<br />http://yzyanchao.blogbus.com/logs/35621328.html<br /><br /> VS2005开始(似乎),用ofstream打开中文路径名会出现乱码问题,解决方法为:<br />std::locale loc = std::locale::global(std::locale(""));<br />std::ofstream fout(FilePath);<br />//转载 2011-05-19 14:15:00 · 1887 阅读 · 1 评论 -
将XLS文件导成Sqlite数据库文件
使用的XLS解析库BasicExcel头文件:// 王智泉#pragma oncenamespace YExcel{ class BasicExcelWorksheet;}struct sqlite3;class XlsToSqlite{public: XlsToSqlite(void); virtual ~XlsToSqlite(void)原创 2012-07-30 13:59:55 · 2863 阅读 · 0 评论 -
使用CPU时间戳进行高精度计时
<br />这个贴子记不起来是在哪里看的了。向原作者表示一下敬意!<br />我在FreeBSD下试验成功过,CPU是P4 1.7G。<br /> <br />使用CPU时间戳进行高精度计时<br /><br />对关注性能的程序开发人员而言,一个好的计时部件既是益友,也是良师。计时器既可以作为程序组件帮助程序员精确的控制程序进程,又是一件有力的调试武器,在有经验的程序员手里可以尽快的确定程序的性能瓶颈,或者对不同的算法作出有说服力的性能比较。<br />在Windows平台下转载 2011-05-17 01:13:00 · 917 阅读 · 0 评论 -
测试CPU品牌和当前工作频率
<br />这里有一段非常简单的代码,取自网络,我稍加修改,贴在这里。用来检查CPU的生产商和品牌,以及当前工作频率,如果是台式机CPU,频率应该恒定,但是移动版本的CPU,频率不停地在变。以下代码用Visual C++编译,因为内嵌一点汇编,造成移植性变差(例如:GCC汇编跟AT&T汇编语法类似,但是MS汇编跟Intel汇编语法类似),以下代码如果希望在MinGW(GCC)下编译,需要修改那点内嵌的汇编。<br />#include "stdafx.h"#ifndef CPUID_HPP_#def转载 2011-05-18 00:54:00 · 988 阅读 · 0 评论 -
在 Win32 Application 和 Win32 Console Application 中使用 MFC
在 Win32 Application 和 Win32 Console Application 中使用 MFC 在Virtual C++ 6.0创建的Win32 Application 和 Win32 Console Application 中使用 MFC 是可能的,主要的困难在于绕过MFC提供的WinMain函数。下面我提供一个方法以供参考: 进入 Project转载 2012-06-02 14:22:56 · 1642 阅读 · 0 评论 -
在win32 应用程序中使用控制台
::AllocConsole(); // 打开控件台 ::freopen("CONOUT$", "w+t", stdout); // 申请写 printf("Hello console!\n"); ::FreeConsole(); // 释放控制台,退出时原创 2012-06-07 09:32:50 · 745 阅读 · 0 评论 -
字符串数值互转
// 王智泉 2012/06/13#ifndef __StringHelper__H__#define __StringHelper__H__#include #include #define iToStdS(v) ValueToString(v).str()#define fToStdS(v) ValueToString(v).str()#define dToStdS(v)原创 2012-06-21 10:14:47 · 680 阅读 · 0 评论 -
c++ 多状态设置
http://blog.youkuaiyun.com/wzq9706/article/details/7858711// 王智泉enum { ST_1 = 0x01 << 1; // 状态1 ST_2 = 0x01 << 2; // 状态2 ST_3 = 0x01 << 3; // 状态3 ST_4 = 0x01 << 4; // 状态4 ST_5 = 0x01 << 5; // 状态原创 2012-08-13 09:28:15 · 1369 阅读 · 0 评论 -
为数据结构添加setProperty和getProperty
为手头游戏项目写编器,关联编器和游戏中的游戏对象的属性成了一个不小的问题,经过多经改写总算有一个相对好点的方案了,如果大家有更好的解决方案,请指点:不废话,上代码:原文地址:http://blog.youkuaiyun.com/wzq9706/article/details/7924881myProperty.h// 王智泉#ifndef __myProperty__H__#d原创 2012-08-30 13:38:09 · 2696 阅读 · 0 评论 -
一个简单的C++的RTTI实现
http://blog.youkuaiyun.com/wzq9706/article/details/7028105前两天,跟刘总讨论工厂模式时,从其金口(^-^)中得知有反射和RTTI这两种模式,这两天看了一些资料,云里雾里的,实濺出真知,今天决定试一试,虽然目前还没搞清反射的具体情况,从网络上看的很多资料中,有用到类似"DECARE_DYNAMIC_CLASS", "IMPLEMENT原创 2011-11-30 18:22:29 · 2578 阅读 · 4 评论 -
实用辅助类-gzip解压类封装
本类在zlib库基础上进行了一层封装,以便在内存中解压gzip数据,源码如下转载 2014-05-07 16:22:06 · 1233 阅读 · 0 评论