c/c++
文章平均质量分 59
lingxiu0613
这个作者很懒,什么都没留下…
展开
-
异常 2011.05.26
<br />转的一篇文章,不知道原始出处。<br /> <br /><br />1. 异常和标准C对它的支持<br /> <br />(前言略)<br /> <br />1.1 异常分类<br /> <br /> 基于Dr. GUI的建议,我把我的第一个专栏投入到“程序异常”的系列上。我认识到,“exception”这个<br /> <br />术语有些不明确并和上下文相关,尤其是C++标准异常(C++ standard exceptions)和Microsoft的结构化异常<br /原创 2011-05-26 17:17:00 · 678 阅读 · 0 评论 -
return 2011.06.03
百度来的,留下来复习用: return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。 return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。 如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。原创 2011-06-03 17:18:00 · 410 阅读 · 0 评论 -
充分利用 Xerces-C++,第 2 部分 (from IBM) 2011.06.07
这篇分为两个部分的文章介绍了 Xerces-C++ XML 库。在本第 2 部分中,Rick Parrish 展示了如何装载、操作或者合成一个文档对象模型(DOM)文档,以及如何用可伸缩矢量图形(SVG)重新创建第1部分中的条形图。C++ 程序员阅读这些文章 之后应该可以在他们的应用程序中容易地增加 XML 解析和处理能力 在 第 1 部分,您看到了如何将库链接到在 Lin原创 2011-06-07 10:59:00 · 847 阅读 · 0 评论 -
充分利用 Xerces-C++,第 1 部分 2011.06.07
简介: 这篇分为两个部分的文章对 Xerces-C++ XML 库作了介绍。第1部分解释如何将这个库链接到在 Linux 和 Windows 中编写的应用程序。大量的代码展示了用 SAX API 进行解析的情况,还有一个示例应用程序显示了如何以 ASCII 艺术的形式创建一个条形图。在第 2 部分,我将展示如何装载、操作或者合成一个 DOM 文档,您还会看到如何用可伸缩矢量图(Scalab原创 2011-06-07 10:55:00 · 600 阅读 · 0 评论 -
sqrt() 2011.06.12
#include #include int main(){ int a = 16; int b = sqrt(a); printf("%d/n", b); return 0;} sqrt()函数就是求平方根,在vc6.0里面运行没问题,但是在vs2005中运行的时候会出现一个错误:error C2668: sqrt : ambi原创 2011-06-12 01:32:00 · 947 阅读 · 0 评论 -
argc argv -主函数main的参数 2011.06.08
#include int main(int argc, char * argv[]){ printf("the number: %d/n", argc); for (int i=0; i { printf("the %d commond is %s/n", i, argv[i]); } return 0;} 文件名为test,编译生成te原创 2011-06-08 15:11:00 · 416 阅读 · 0 评论 -
#pragma pack() 2011.06.08
#pragma pack(n)和#pragma pop()跟据我的理解是:struct sample{char a;double b;};当sample结构没有加#pragma pack(n)的时候,sample按最大的成员那个对齐;(所谓的对齐是指对齐数为n时,对每个成员进行对齐,既如果成员a的大小小于n则将a扩大到n个大小;如果a的大小大于n则使用a的大小;)所以上面原创 2011-06-08 16:02:00 · 386 阅读 · 0 评论 -
C++ error "intellisense information will not be available for vc++" 2011.06.13
打开VS2005的一个工程文件的时候,(弹出这个对话框)出现下面这个错误: IntelliSense information will not be available for VC++ projects because the IntelliSense database fileE:/***.ncb could not be opened for writing Ot原创 2011-06-13 16:49:00 · 2581 阅读 · 0 评论 -
Xerscsc - C++ 2011.06.14
使用Xerces中DOM的相关流程为: 初始化Xerces使用Xerces编程,必须在调用其他的Xerces API之前,使用XMLPlatformUtils::Initialize() 来初始化。 假如未初始化,就会出现内存错误。如图片所示:原创 2011-06-14 13:43:00 · 452 阅读 · 0 评论 -
递归 2011.06.16
在n个人中 选 k个人 组成一个委员会,有几种选法:#include using namespace std; int func(int n, int k){ if (n==k || k==0) { return 1; } else { return func(n-1, k) + func(n-1, k-1); } }原创 2011-06-16 23:17:00 · 357 阅读 · 0 评论 -
VS 2005下DirectShow开发环境的配置 2011.06.17
[1] 请确保您的机子上已经安装了VS 2005和DirectX 9.0b SDK。DX9.0 SDK的下载地址就不写了,自己在网上找吧!(我的DX9.0安装在D盘根目录下)[2] 首先编译SamplesC++DirectShowBaseClasses目录下的baseclasses.sln以得到两个库文件(strbase.lib和strmbase.lib)。以下介绍的主要是如何修改编译中的转载 2011-06-17 15:54:00 · 942 阅读 · 0 评论 -
Ignore all default libraries 2011.06.23
Ignore All Default Libraries----------放弃所有默认的库连接 被一个连接错误困扰了好几天,今天刚解决,写下来,以后不再犯。一般情况下,vc的设置Project|Settings|Link中的 Ignore all default libraries 选项是不选的。但是在dshow配置的时候一般他是建议你选上,因为它所连接的库文件都在配置里原创 2011-06-23 15:30:00 · 1414 阅读 · 0 评论 -
vs2005 显示行号 2011.06.21
好像版本不同选项是不同的。我机子上装的是个中文版的:工具->选项->文本编辑器->c/c++->常规->显示->点上行号选项,确定然而英文版的是:Tools-->OptionsText Editor--->All Languages--->General--->Display--->Line numbers中文版的General选项里面竟然跟英文原创 2011-06-21 22:25:00 · 614 阅读 · 0 评论 -
altova XMLspy 2010 Enterprise 注册方法 2011.06.28
断网注册,有的时候 会出现错误提示框,其实是在想更新的问题。可以这样:连网时软件会连接官方服务器检验软件是否为正版,屏蔽官网就行了,如下:127.0.0.1 altova.com #XMLspy 127.0.0.1 www.altova.com #XMLspy 127.0.0.1 link.altova.com #XMLspy 追加加到:C:/WINDOWS/syste原创 2011-06-28 15:38:00 · 2272 阅读 · 0 评论 -
directshow firstpart 2011.06.27
做render filter的时候,用sample里面的一个dump例子,但是不调用读文件的对话框,if (riid == IID_IFileSinkFilter) {// return GetInterface((IFileSinkFilter *) this, ppv); } IFileSinkFilter 这个类是用来调用打开文件对话框的,把这行注释掉原创 2011-06-27 19:16:00 · 401 阅读 · 0 评论 -
error PRJ0019: A tool returned an error code from "Performing Post-Build Event..." 2011.06.29
我用vs2005编译工程的时候,得到这个错误:error PRJ0019: A tool returned an error code from "Performing Post-Build Event..." 网上查一下:打开properties属性页,找到Build Events选项,选择Post-build event选项,它的command line选项置成空的就行原创 2011-06-29 14:49:00 · 6188 阅读 · 2 评论 -
LNK1104: cannot open file 'largeint.lib' 2011.07.07
LNK1104: cannot open file 'largeint.lib'编译DX2005年版及其以前版本的DirectShow或是其他老版本代码时,如果发现Largeint.lib找不到这个LNK1104错误,LNK1104: cannot open file 'larg原创 2011-07-07 09:36:37 · 1311 阅读 · 1 评论 -
error LNK2001: unresolved external symbol "unsigned int (__stdcall* ATL::g_pfnGetThreadACP)(void)" (
error LNK2001: unresolved external symbol "unsigned int (__stdcall* ATL::g_pfnGetThreadACP)(void)" (?g_pfnGetThreadACP@ATL@@3P6GIXZA)编译编译Dir原创 2011-07-08 18:05:17 · 4008 阅读 · 1 评论 -
directshow 推模式与拉模式的区别 2011.07.11
推数据模式和拉数据模式:推数据模式是指源过滤器通过自己的线程获得流数据,然后将数据递交到下一个过滤器,而下一个过滤器处理完数据后又将数据递交到它的下一个过滤器。这要求在整个过滤器图中所有的过滤器都支持推数据模式,数据流才能顺利的流动。 而拉数据模式是指源过滤器的下一个过滤器是一原创 2011-07-11 11:36:42 · 2895 阅读 · 2 评论 -
string 分割字符串 2011.07.13
#include using namespace std;#include int main(){ string str = "abc defg hijklm nopq rstu vwxyz"; for (string::size_type i=0; i!= st原创 2011-07-13 17:16:49 · 904 阅读 · 0 评论 -
typedef和define具体的详细区别 2011.07.12
1) #define是预处理指令,在编译预处理时进行简单的替换,不作正确性检查,不关含义是否正确照样带入,只有在编译已被展开的源程序时才会发现可能的错误并报错。例如:#define PI 3.1415926程序中的:area=PI*r*r 会替换为3.1415926*r*r转载 2011-07-12 09:14:28 · 480 阅读 · 0 评论 -
解决office2007安装程序找不到office.zh-cn/Setup.xml OFFICELR.CAB OFFICEMUI.MSI OFFICEMUI.XML SETUP.XML
安装Microsoft Office Project Standard 2007时出现了小问题,经过百度google一番后才发现安装office2007与安装vs2008有着紧密的联系 我的机子之前已经安装过VS2008,所以在安装office2007时总是提示“安装程序找不到转载 2011-07-20 22:38:20 · 1374 阅读 · 0 评论 -
动态修改 控件属性 2011.07.21
做filter,运行状态控件是灰色的,不可修改的在这里用到了EnableWindow函数。EnableWindow(m_hComboBox, FALSE); EnableWindow(m_hEditIpAddr, FALSE); EnableWindow(m_hEditIpPor原创 2011-07-21 14:47:19 · 799 阅读 · 0 评论 -
身份证查询-dos版本 2011.07.22
昨天在QQ群里,看网友做个身份证查询的dialg版,自己想想思路应该不难。就简单的实现了一下:思路:txt文件里面存籍贯号,然后读文件,把这些籍贯号读进链表,输入身份证号,比对。然后解析前6位----籍贯中间8位------出生年月日组后4位-----性别资源传上来了:http:原创 2011-07-22 13:14:10 · 790 阅读 · 0 评论 -
UDP vc++ 2011.07.14
server:#include #include void main(){ WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD(1, 1); err = WSAStartup原创 2011-07-14 16:14:35 · 814 阅读 · 0 评论 -
error LNK2019: unresolved external symbol __imp__inet_ntoa@4 referenced in function
用vs2005编译udp socket的时候,出现这个连接错误:1>Sever.obj : error LNK2019: unresolved external symbol __imp__closesocket@4 referenced in function _main1>原创 2011-07-14 16:17:51 · 9710 阅读 · 0 评论 -
编译Directshow中的NullInPlace所遇见的错误 2011.07.27
fatal error LNK1104: cannot open file 'largeint.lib'这个错误的解决办法是 直接删除 largeint.lib 引用具体位置在(Properties/Configuration Properties/Linker/Input/Ad原创 2011-07-27 10:12:18 · 669 阅读 · 0 评论 -
list 链表的 创建、输出(打印)、删除、插入 2011.07.26
#include <iostream>using namespace std;#include <malloc.h>#define LEN sizeof(struct student)struct student{ int num; float score; s原创 2011-07-26 12:15:52 · 549 阅读 · 0 评论 -
vector与iterator的使用
#include using namespace std;#include #include int main(){ vector vectorInt; int i = 10; while (i>0) { vectorInt.push_back(i--);原创 2011-07-18 11:33:56 · 1547 阅读 · 0 评论 -
一个简单的媒体文件播放器 2011.07.18
这两天看 Directshow开发指南 ,一直在为filter的事情学习。看到第五章的时候,有个播放器例子,研究了一下还不算难,就跟着人家写了一遍。相对来说,比直接用那个用 ActiveMovie控件 的稍微难点,这里是用的Picture Control控件,把视频直接刷到bit原创 2011-07-18 19:38:35 · 742 阅读 · 0 评论 -
编译执行和解释执行的区别 2011.07.28
A、解释程序 所谓解释程序是高级语言翻译程序的一种,它将源语言(如BASIC)书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本。这种工作方式非常适合于人通过终端设备与计算机会话,如在终端上打一原创 2011-07-28 17:45:22 · 557 阅读 · 0 评论 -
ComboBox --不用CComboBox类的使用方法 2011.07.20
在写RenderFilter的时候 用到ComboBox这个控件,网上看一下,大部分都是讲继承CComboBox类,然后用CComboBox类的各种方法。因为我这个属性页 继承的是CBasePropertyPage这个类,没办法直接用CComboBox。所以我选择:m_hComb原创 2011-07-20 17:57:43 · 970 阅读 · 0 评论 -
error LNK2005: xxx already defined in libcmt.lib(xxx.obj) MSVCRT.lib
这个错误是微软设计错误,因此如果遇到这个错误,我们只能躲过这个链接错误。具体的办法就是将那个提示出错的库放到另外一个库的前面。另外选择不同的C函数库,可能会引起这个错误。MS, C有两种C函数库,一种是普通的函数库:LIBC.LIB,不支持多线程。另外一种是支持多线程的:msvc转载 2011-08-02 15:33:16 · 884 阅读 · 0 评论 -
C++ 变量 用汉字表示 2011.08.04
#include using namespace std;int main(){ int 不是 = 7; int 是 = 6; int 恩啊; 恩啊 = 不是 + 是; cout<<恩啊<<endl; return 0;}输出:13QQ群原创 2011-08-04 16:41:24 · 1159 阅读 · 2 评论 -
string中的compare() 2011.08.09
#include #include using namespace std;int main(){ string str = "hello"; cout<<str.compare("hello")<<endl; cout<<str.compare("hello w原创 2011-08-09 15:36:41 · 734 阅读 · 0 评论 -
解决main(int argc, char * argv[])参数有空格问题 2011.09.23
在给main的参数传字符串的时候,如果传123456,main会得到123456.如果传123 456,main会得到连个参数分别是123和456中间有空格会分割解决方法是:给字符串前后加个“,main就会得到带空格的整字符串,不会分割他们stri原创 2011-09-23 12:22:56 · 5105 阅读 · 1 评论 -
c++中 string a转化成char b[] 和char b[]转化成string a
字符串类型转化成字符数组没别的办法,只能一个个字符的赋值,如下 for(int i=0;i<a.length();i++) b[i] = a[i]; b[a.length()] = '\0';字符数组转化成字符串类型很方便只需要 a = b;就可,a为stri原创 2011-09-23 17:14:54 · 1755 阅读 · 0 评论 -
cout与cerr的区别 2011.09.28
cerr与cout的主要区分就是:cout输出的信息可以重定向,而cerr只能输出到标准输出(显示器)上。primer.cpp文件:#include using namespace std;int main(){ cout<<"hello----cout"<<e原创 2011-09-28 11:50:59 · 828 阅读 · 4 评论 -
服务端配置 ftp 2011.11.15
服务端配置-操作系统IIS安装1. 插入windows xp安装光盘,打开控制面板,然后打开其中的“添加/删除程序”。2. 选择添加或删除Windows xp 的组件。并选中“Internet 信息服务(IIS)”,点击“详细信息”按钮后按“下一步”。3.选中“文件传输协议FTP服务”按确定,系统自动安装相关组建。4.IIS服务端配置Ftp服务执行【开始】→【程序】→【管理工具转载 2011-11-15 19:00:54 · 516 阅读 · 0 评论 -
error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup 2011.10.29
error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup产生这个问题可能的原因1, 你用vc建了一个控制台程序,它的入口函数应该是main, 而你使用了WinMain.2. 你用vc打开了一个.c/.cpp 文件,然后直接编译这个文件,这个文件中转载 2011-10-28 12:24:04 · 1062 阅读 · 0 评论