C/C++
文章平均质量分 71
jxxfqyy
这个作者很懒,什么都没留下…
展开
-
数组初始化
变量不能用来初始化数组。因为gb_UsbDir是变量,里面的东西是变化的。编译器无法确定其内容,所以不能初始化。只能在运行时采用strcpy类似的还有int n = 10;int a[n]; 但#define n 10 (或者const int n = 10)int a[n]; 是可以的,因为此时n是常量原创 2009-04-23 09:48:00 · 515 阅读 · 0 评论 -
图片灰化
BOOL CResourceCreator::CreateGrayPngFromColorPng(LPCTSTR lpColorPath, LPCTSTR lpGrayImagePath){ if (NULL == lpColorPath || lpColorPat原创 2011-09-05 13:07:36 · 1376 阅读 · 0 评论 -
字体管理
3.1 文本输出文本输出比图像输出涉及更多的内容和概念。本小节介绍文本输出的基本概念和Windows上文本输出的两种基本方式及其模拟实现方法。下一节“字体管理”是本节内容的一个顺延,也是文本输出所依赖的重要内容。3.1.1 基本概念在介绍Windows的文本输出功能及其模拟方法之前,这里先介绍一下一些文本输出的基本概念。这些概念是与具体的平台无关的。了解这些背景知识将有助于后面的功转载 2011-11-21 15:33:18 · 2898 阅读 · 0 评论 -
boost字符串处理(下)
四、正则表达式库 Boost.Regex Boost C++的正则表达式库Boost.Regex可以应用正则表达式于C++。正则表达式大大减轻了搜索特定模式字符串的负担,在很多语言中都是强大的功能。虽然现在C++仍然需要以 Boost C++库的形式提供这一功能,但是在将来正则表达式将进入C++标准库。 Boost Regex库有望包括在下转载 2012-01-11 17:04:28 · 4356 阅读 · 0 评论 -
boost字符串处理(上)
一、概述 最近工作又开始忙了,额外学习boost的机会也变少了很多,再加上在使用Boost时出现了很多编译错误的问题,让写文章的过程变得不可预测了。但我还是很期待这一部分,这是在平时应用中最常见的,也是boost的看家本领了,将会着重介绍。在标准 C++ 中,用于处理字符串的是std::string 类,它提供很多字符串操作,包括查找指定字符或子串的函数。尽管 std::string转载 2012-01-11 17:03:30 · 2928 阅读 · 0 评论 -
自定义排序函数实现时需要注意的问题
stl范型算法中的sort可以根据自定义的函数进行排序,也可以用函数对象。我今天碰到一个关于错误地定义此函数的问题,运行时出现assert异常,检查了好久以后,才发现是什么原因。 我要比较两个CPoint *类型的对象,定义的函数如下:bool compair_points(CPoint const* p1, CPoint const* p2){ return p1-转载 2012-02-08 14:51:53 · 1032 阅读 · 0 评论 -
定义函数指针的写法
经常忘记,这里记录一下://对于传入指针的数据,需要提供释放函数,这是释放函数的函数指针typedef BOOL (*pDeleteDataFunction)(void* pData);原创 2012-03-13 14:22:55 · 606 阅读 · 0 评论 -
自己实现快捷方式文件的创建
最近写个程序需要创建快捷方式,可是烦人的杀软,每次都会拦截,尤其是程序使用的时候,要创建快捷方式就拦截,真是一肚子火啊。找了很久的资料,终于找到了一篇关于快捷方式文件的数据结构分析的文章:http://www.vckbase.com/document/viewdoc/?id=1411经过阅读分析,编码测试,终于搞定了不用IShellLink接口来创建快捷方式首先转载 2012-08-24 17:45:09 · 906 阅读 · 0 评论 -
bmp, jpg, png格式图标互转
ico文件不能转,因为ico文件比较特殊,他可以一个文件里存放多个不同尺寸的文件。目前只有decoder没有encoder所以只能读不能写。int CResourceCreator::GetImageCLSID(const WCHAR* format, CLSID* pCLSID) { //得到格式为format的图像文件的编码值,访问该格式图像的COM组件的GUID值保存在原创 2012-08-24 17:50:53 · 954 阅读 · 0 评论 -
sscanf函数用法详解
sscanf函数用法详解 名称: sscanf() - 从一个字符串中读进与指定格式相符的数据. 函数原型: Int sscanf( string str, string fmt, mixed var1, mixed var2 ... ); int scanf( const char *format [,argument]... ); 说明: sscanf与scanf转载 2009-08-11 09:54:00 · 866 阅读 · 0 评论 -
libxml2对XML文件的创建、解析、查找、修改
libxml2对XML文件的创建、解析、查找、修改2008-04-24 10:42项目中要实现一个管理XML文件的后台程序,需要对XML文件进行创建,解析,修改,查找等操作,下面介绍如何利用libxml2提供的库来实现上述功能。1、创建XML文档: 我们使用xmlNewDoc()来创建XML文档,然后使用xmlNewNode(),xmlNewChild(),xmlN转载 2009-06-08 20:06:00 · 1511 阅读 · 0 评论 -
static
<br />C++中的static简介<br /> C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。 面向过程设计中的static<br /> 1、静态全局变量 <br /> 在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个静态全局变量的例子,如下: <br /> //Example 1 <br /> #include <iostrea转载 2011-05-12 15:23:00 · 417 阅读 · 0 评论 -
C++中的模板(template)
<br />模板是C++在90年代引进的一个新概念,原本是为了对容器类(container classes)的支持[1],但是现在模板产生的效果已经远非当初所能想象。<br />简单的讲,模板就是一种参数化(parameterized)的类或函数,也就是类的形态(成员、方法、布局等)或者函数的形态(参数、返回值等)可以被参数改变。更加神奇的是这里所说的参数,不光是我们传统函数中所说的数值形式的参数,还可以是一种类型(实际上稍微有一些了解的人,更多的会注意到使用类型作为参数,而往往忽略使用数值作为参数的情况)转载 2011-05-16 19:03:00 · 557 阅读 · 0 评论 -
C++中的Vector的用法
<br />C++中的vector使用范例<br />一、概述<br />vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。vector是一个容器,它能够存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,可以动态改变大小。<br />例如:<br />// c语言风格<br />int myHouse[100] ;<br />// 采用vector<br />vector<int> vecMyHouse(100);<br />转载 2011-05-16 18:48:00 · 608 阅读 · 0 评论 -
sscanf
<br />名称: sscanf() - 从一个字符串中读进与指定格式相符的数据. 编辑本段函数原型:<br /> Int sscanf( const char *, const char *, ...); <br /> int scanf( const char *, ...); 编辑本段头文件:<br />#include<stdio.h>编辑本段说明:<br />sscanf与scanf类似,都是用于输入的,只是后者以键盘(stdin)为输入源,前者以固定字符串为输入源。 第一个参数可以是转载 2011-05-23 09:31:00 · 574 阅读 · 0 评论 -
sizeof
简介 Pascal的一种内存容量度量函数: C语言中判断数据类型长度符 编辑本段用法 Var a : array[1..10000] of longint; Begin Writeln(SizeOf(a)); End. 输出:40000 如果定义Integer,则输出:20000 c语言中判断数据类型长度符的关键字原创 2011-06-09 15:35:00 · 552 阅读 · 0 评论 -
vector和deque区别
先说句题外话哈:标准的C++头文件都没有.h后缀,有.h的文件是与C兼容的,或支持老的不标准的东西,如1、std::vetorat(n)和operator[](n)都返回下标为n的元素的引用,但是at()进行下标越界检查,若越界,抛出range_error,opteraor[]不原创 2011-07-24 17:54:06 · 3450 阅读 · 1 评论 -
bmp转ico
ico文件比较特殊,一般都不能转,这里从网友那儿看到了一段把bmp转ico的代码,没有试过,先留着以后用的上的时候,拿出来试试。多谢网友的分享。CFileDialog DlgFileOpen( TRUE, "*.ICO ",NULL,NULL, "bmp文件(*.BMP)|*.BMP|| "); if(DlgFileOpen.DoModal()==IDCANCEL) return;转载 2012-08-24 17:54:44 · 1665 阅读 · 0 评论