上一页 1 ··· 3 4 5 6 7 8 下一页
2011年6月25日
摘要: 添加函数:// 显示位图bool CPictureDlg::LoadPicture(void){ CDC *dc; dc=GetDC(); //得到对话框的设备环境 CDC dcMemory; dcMemory.CreateCompatibleDC(dc); //得到与对话框设备环境相兼容的内存DC CBitmap *bitmap = new CBitmap(); HBITMAP hbitmap; //装载图片 hbitmap=(HBITMAP)::LoadImage(NULL, "F://风景.bmp",IMAGE_BITMAP,0,0,LR... 阅读全文
posted @ 2011-06-25 17:09 Jiang, X. 阅读(821) 评论(1) 推荐(0) 编辑
摘要: 今天写了这样的一些代码://使控件的大小跟随窗口的大小而变化//////////////////////////////////////////////////////void CPlannerDlg::OnSize(UINT nType, int cx, int cy){ CDialog::OnSize(nType, cx, cy); m_Calendar.MoveWindow(100,100,200,200,0);} 但是每次运行都有ASSERT()错误。 本以为是变量与控件的关系没有关联好,就测试了一下,发现并没有问题。 于是在OnInitDialog()于OnSize() 中分别插入了 阅读全文
posted @ 2011-06-25 16:29 Jiang, X. 阅读(2238) 评论(0) 推荐(0) 编辑
2011年6月23日
摘要: 压缩BCD码调整指令语法格式: DAA ; 调整AL中的和为压缩BCD码 DAS ; 调整AL中的差为压缩BCD码功能描述: DAA:通常先执行ADD/ADC指令,将2个压缩BCD码相加,结果存放在AL中。然后使用该指令将AL调整为压缩BCD码格式。 DAS:通常先执行SUB/SBB指令,将2个压缩BCD码相减,结果存放在AL中。然后使用该指令将AL调整为压缩BCD码格式。对标志位的影响:OF不确定;CF反映压缩BCD码相加/相减的进位/借位状态;按一般规则影响SF和ZF。说明:若使用DAA/DAS指令,则参加加法/减法运算的操作数应该是压缩BCD码。如果将任意2个二进制数相加/减,然后调整, 阅读全文
posted @ 2011-06-23 20:58 Jiang, X. 阅读(6919) 评论(0) 推荐(0) 编辑
摘要: 汇编这样可以直接读写内存的程序也需要用到变量。但它不像其它高级语言那样把变量分成许多类型,它是按照变量的长度来区分的,所以定义(define)变量时就用5个不同的关键字:DB,DW,DD,DQ,DT(事实上常用的只有DB,DW)DB(DEFINE BYTE)即定义的变量占一个字节的长度(也可以说把定义的变量值放入一个字节的内存空间)如:a DB 7h ;意思是将7h放入内存的某一个字节(空间)中,然后让变量a指向这个字节也可以这样:a DB 'h' ;虽然‘h’是个字符但存入内存却成了它对应的ASCII码48h你也可以用DB来定义数组,如:a DB 48h, 65h, 6Ch, 阅读全文
posted @ 2011-06-23 20:25 Jiang, X. 阅读(15460) 评论(0) 推荐(2) 编辑
摘要: 比如你用local在栈上定义了一个局部变量LocalVar,你知道实际的指令是什么么?一般都差不多像下面的样子: push ebp mov esp, ebp sub esp, 4 现在栈上就有了4各字节的空间,这就是你的局部变量。 接下来,你执行mov LocalVar, 4,那么实际的指令又是什么?是这样: mov dword ptr [ebp-4], 4 于是,这个局部变量的“地址”就是ebp-4——显然,它不是一个固定的地址。现在需要将它的“地址”作为参数传给某个函数,你这样写: invoke/call SomeFunc, add... 阅读全文
posted @ 2011-06-23 11:25 Jiang, X. 阅读(808) 评论(0) 推荐(0) 编辑
摘要: 字符串操作指令 汇编语言中,串操作指令LODSB/LODSW是块装入指令,其具体操作是把SI指向的存储单元读入累加器,LODSB就读入AL,LODSW就读入AX中,然后SI自动增加或减小1或2.其常常是对数组或字符串中的元素逐个进行处理。例如:驻留程序使用 "base memory size in KB" of BIOS Data Area (0040h:0013h)给自己程序开辟2K内存,程序可以这样实现:push esmov si,0413h ; using "base memory size in KB" of BIOS Data Area (00 阅读全文
posted @ 2011-06-23 11:15 Jiang, X. 阅读(10260) 评论(0) 推荐(0) 编辑
摘要: 中断的语法格式: INT n ; 调用中断n的中断服务程序。n 为中断号,取值0 ~ 255。 对标志位的影响:不影响CF、OF、SF、ZF。 MS DOS使用中断号21H作为系统调用,为程序员提供了上百种系统服务功能,对这些功能的调用步骤如下: (1)由AH给出功能号。 (2)根据相应功能的要求,设置入口参数。 (3)INT 21H。 (4)分析和使用出口参数。 其中,最常用的是功能号4CH,用来实现程序退出、并返回DOS。使用方法如下: mov ah, 4ch int 21h INT 21H 中断AH功能调用参数返回参数00程序终止(同INT 20H)CS=程序段前缀 01键盘输入并... 阅读全文
posted @ 2011-06-23 00:30 Jiang, X. 阅读(1671) 评论(0) 推荐(0) 编辑
2011年6月22日
摘要: 中断 0: 除数为0错 中断 1: 单步中断 中断 2: 不可屏蔽中断 NMI 中断 3: 断电中断 (CCH) 中断 4: 溢出中断 中断 5: 屏幕打印中断 中断 6-7: 保留 中断 8: 计时器中断(18.2/秒) 中断 9: 键盘中断 中断 A-D: 保留 中断 E: 软盘机中断 中断 F: 保留 中断 10: 屏幕I/O调用 中断 11: 设备检查调用 中断 12: 存贮器检查调用 中断 13: 软盘机I/O调用 中断 14: RS-232 I/O 调用 中断 15: 盒带机I/O调用 中断 16: 键盘I/O调用 中断 17: 打印机I/O调用 中断 18: ROM-BASIC入 阅读全文
posted @ 2011-06-22 23:56 Jiang, X. 阅读(3648) 评论(0) 推荐(0) 编辑
摘要: 1. 否操作指令NOTNOT OPRD把OPRD取反,再回送给OPRD对标志位没有影响2. 与操作指令AND[与]AND OPRD1,OPRD2OPRD1和OPRD2执行与操作,结果送到OPRD1执行后,CF=OF=0,标志PF,ZF,SF反映运算结果,AF未定义某个操作数自身与,值不变,可使进位标志CF=03. 或操作指令OR[或]OR OPRD1 OPRD2标志位同与运算指令某个操作数自身或,值不变,可使进位标志CF=04. 异或操作指令XOR[异或]XOR OPRD1 OPRD2标志位同与运算指令某个操作数自身异或,值不变,可使进位标志CF=0与0异或,不变,与1异或,取反。5. 测试指 阅读全文
posted @ 2011-06-22 22:54 Jiang, X. 阅读(1010) 评论(0) 推荐(0) 编辑
摘要: SHL与SHR指令shl ax,n ;ax里的数左移n位(2进制的)即乘以2n,同时把最后位移到CL寄存器中shr ax,n ;ax里的数右移n位(2进制的)即除以2n,同时把最后位移到CL寄存器中移位指令经常用来简便乘除运算如果要移动的位数s大于1,则需要把移动位数放到CL里面,如下:shl ax, cl如果第二个操作数不写cl而写ah,就无法编译通过: 阅读全文
posted @ 2011-06-22 21:31 Jiang, X. 阅读(2827) 评论(0) 推荐(0) 编辑
摘要: assume最典型的用法: 是指明变量与段寄存器的联系,比如 assume ds:data,它是告诉编译器以后所有在data段中定义的变量寻址时,使用ds作为段地址,但是它不对程序作任何事,比如你必须自己对ds赋值,这也就是为什么dos下典型的汇编段如下: .data ........ .code ........ assume cs:code,ds:data proc main far mov ax,data mov ds,ax ... endp end 需要注意的是cs不需要赋值,因为它是由操作系统调用程序时赋值的。 ASSUM... 阅读全文
posted @ 2011-06-22 21:24 Jiang, X. 阅读(1780) 评论(0) 推荐(0) 编辑
摘要: 数据传输指令───────────────────────────────────────它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据.1. 通用数据传送指令.MOV 传送字或字节.MOVSX 先符号扩展,再传送.MOVZX 先零扩展,再传送.PUSH 把字压入堆栈.POP 把字弹出堆栈.PUSHA 把AX,CX,DX,BX,SP,BP,SI,DI依次压入堆栈.POPA 把DI,SI,BP,SP,BX,DX,CX,AX依次弹出堆栈.PUSHAD 把EAX,ECX,EDX,EBX,ESP,EBP,ESI,EDI依次压入堆栈.POPAD 把EDI,ESI,EBP,ESP,EBX,EDX, 阅读全文
posted @ 2011-06-22 21:01 Jiang, X. 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 在8086的EU和BIU两部分中包含有一些工作寄存器,这些寄存器用来存放计算过程中的各种信息,如操作数地址、操作数及运算的中间结果等。微处理器从寄存器中存取数据比从存储器中存取数据要快的多,因此,在计算过程中,合理利用寄存器保存操作数、中间结果或其它信息,能提高程序的运行效率。根据这些寄存器所起的作用,8086寄存器组可以分为通用寄存器、专用寄存器和段寄存器三类,如图2.3所示。下面分别介绍这些寄存器。 1. 通用寄存器 通用寄存器包括了8个16位的寄存器:AX、BX、CX、DX、SP、BP、DI及SI。其中AX、BX、CX、DX在一般情况下作为通用的数据寄存器,用来暂时存放计算过程中所... 阅读全文
posted @ 2011-06-22 20:56 Jiang, X. 阅读(415) 评论(0) 推荐(0) 编辑
摘要: DirectUI 概要DirectUIDirectUI是一款强大的界面开发工具,可以将用户界面和处理逻辑彻底分离,极大地提高用户界面的开发效率。提供所见即所得的开发工具DirectUI Builder。使用DirectUI后将使得我们的设计人员彻底解放,不会受到开发的束缚,可以充分地发挥其设计能力来设计软件界面,并参与到用户界面开发过程中。 DirectUI支持多种开发语言及平台,比如VC,VB,C#,Delphi,C++Builder,PowerBuilder等等。http://www.directui.com/使用DirectUI制作界面可以达到的效果是原始的界面开发技术所不能匹敌的。简单 阅读全文
posted @ 2011-06-22 13:12 Jiang, X. 阅读(1217) 评论(0) 推荐(0) 编辑
2011年6月20日
摘要: MultiThread Of Member Functions发现使用CreateThread()的方法无法对类地成员函数创建多线程。【例如】//该代码将直接导致程序崩溃://创建线程////////////////////////////////////////////void CMuti_2_ParamentsDlg::OnBnClickedOk(){ DWORD ThreadID; HANDLE hThread = CreateThread( NULL, 0, (LPTHREAD_START_ROUTINE)Add(1, 2), 0, 0, &ThreadID);}//示例函数[ 阅读全文
posted @ 2011-06-20 20:16 Jiang, X. 阅读(197) 评论(0) 推荐(0) 编辑
摘要: /* 函数指针: 即函数的入口地址. [注意] 函数指针不能支持自增++与自减--的操作。*/#include <stdio.h>int sum(int a, int b);int main(){ //函数指针的声明 ////////////////////////////////// int //函数的返回值类型 (*f) //函数指针变量名 (int a, int b) //参数列表 = 0; //初始化 f = sum; //赋值 int n = f(1, 2); //利用函数指针调用函数 return 0;}//示例函数//////////////////... 阅读全文
posted @ 2011-06-20 15:49 Jiang, X. 阅读(180) 评论(0) 推荐(0) 编辑
摘要: MultiThread问题背景例如,一个网络程序,如果你不用多线程,即只使用窗口线程,那么程序在接收到封包之前是阻塞的,那么你的窗口线程就会一直等待接收封包的函数执行完毕,那么你的窗口就像死了一样卡住不动了,用了多线程就不会这样。进程和线程都是操作系统的概念。进程是应用程序的执行实例,每个进程是由私有的虚拟地址空间、代码、数据和其它各种系统资源组成,进程在运行过程中创建的资源随着进程的终止而被销毁,所使用的系统资源在进程终止时被释放或关闭。 线程是进程内部的一个执行单元。系统创建好进程后,实际上就启动执行了该进程的主执行线程,主执行线程以函数地址形式,比如说main或WinMain函数,将程. 阅读全文
posted @ 2011-06-20 11:39 Jiang, X. 阅读(366) 评论(0) 推荐(0) 编辑
摘要: 一、什么是MFC 微软基础类(Microsoft Foundation Classes),实际上是微软提供的,用于在C++环境下编写应用程序的一个框架和引擎,VC++是WinOS下开发人员使用的专业C++ SDK(SDK,Standard SoftWare Develop Kit,专业软件开发平台),MFC就是挂在它之上的一个输助软件开发包,MFC作为与VC++血肉相连的部分(注意C++和VC++的区别:C++是一种程序设计语言,是一种大家都承认的软件编制的通用规范,而VC++只是一个编译器,或者说是一种编译器+源程序编辑器的IDE,WS,PlatForm,这跟Pascal和Dephi的关系一 阅读全文
posted @ 2011-06-20 10:23 Jiang, X. 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 一、预编译头文件使用经验:如果预编译头文件被正确使用时,它确实大大提高我们编程的效率(你工作中,有多少时间是在等编译完成?很多吧,这个时候一般都很无聊,无奈,浪费时间)。但是他太容易用错了. 下面是几种常见的错误用法.1) 在预编译头文件里include自己的头文件(当然, 如果你的头文件不经常变化, 也可以)原因:自己的头文件一般会经常变, 便利后导致预编译的东东重新编译, 降低了编译速度.2) 在其他的头文件里也include 预编译头文件假设你的其他头文件也include了预编译头文件, 如果别人引用你的这个头文件又没有设置成预编译头文件, 那引用你头文件的这个人就煎熬了.原 因:由于你 阅读全文
posted @ 2011-06-20 09:39 Jiang, X. 阅读(220) 评论(0) 推荐(0) 编辑
摘要: C库函数中字符串处理函数集合bcmp原型:extern int bcmp(const void *s1, const void *s2, int n);用法:#include <string.h>功能:比较字符串s1和s2的前n个字节是否相等说明:如果s1=s2或n=0则返回零,否则返回非零值。bcmp不检查NULL。bcopy 原型:extern void bcopy(const void *src, void *dest, int n);用法:#include <string.h> 功能:将字符串src的前n个字节复制到dest中 说明:bcopy不检查字符串中的空 阅读全文
posted @ 2011-06-20 09:16 Jiang, X. 阅读(276) 评论(0) 推荐(0) 编辑
2011年5月31日
摘要: 以下用一个自创的对话框类(MyMessageDlg)向视图类(MessageTestView)发送自定义消息为例,说明这两种不同方法的自定义消息的消息传递的方法一:使用ON_MESSAGE使用ON_MESSAGE响应消息,必须配合定义消息#define WM_MY_MESSAGE (WM_USER+100)对于发送消息者-MyMessageDlg,在其MyMessageDlg.h中,定义#define WM_MY_MESSAGE (WM_USER+100)在其MyMessageDlg.cpp中要先添加:#i nclude "MainFrm.h"因为使用了CMainFrame 阅读全文
posted @ 2011-05-31 23:58 Jiang, X. 阅读(745) 评论(0) 推荐(0) 编辑
摘要: 当用到CMFCPropertyGridProperty这个类控件的时候出现了一个很白痴的问题,CMFCPropertyGridProperty更改属性值触发的是哪个事件,如何获得他被更改时的通知?难道要设置回调?我看了这个类的所有的方法,都没有找到设置回调的函数.因为CMFCPropertyGridProperty这个类控件是在属性页CMFCPropertyGridCtrl中活动,所以我就又看了CMFCPropertyGridCtrl这个的方法,唯一找到一个名字稍微靠谱的就是OnPropertyChanged(字面意思就是属性更改),接着我找到MFC的源文件afxpropertygridct. 阅读全文
posted @ 2011-05-31 23:52 Jiang, X. 阅读(4463) 评论(0) 推荐(1) 编辑
摘要: MFC右侧属性分栏用法初始状态设置m_wndPropList.EnableHeaderCtrl(FALSE);m_wndPropList.EnableDescriptionArea();m_wndPropList.SetVSDotNetLook();m_wndPropList.MarkModifiedProperties();添加分栏:CMFCPropertyGridProperty* pGroup1 = new CMFCPropertyGridProperty(_T("外观"));m_wndPropList.AddProperty(pGroup1);添加子项:pGroup 阅读全文
posted @ 2011-05-31 21:59 Jiang, X. 阅读(1295) 评论(0) 推荐(0) 编辑
摘要: 今天写了一个类的成员函数,定义的时候没有些命名空间的声明,结果造成了类中一些成员变量的不可识别。 发现如果用VS写成员函数却发现没有智能提示的功能,就可以考虑在函数命名的时候是不是少了命名空间的设置。 阅读全文
posted @ 2011-05-31 14:48 Jiang, X. 阅读(151) 评论(0) 推荐(0) 编辑
摘要: PlaceNameSolvedTimeLast solved1Zhejiang University812282902University of Michigan at Ann Arbor814622913Tsinghua University78002184St. Petersburg State University78932805Nizhny Novgorod State University79382736Saratov State University79662727Friedrich-Alexander-University Erlangen-Nuremberg710882888D 阅读全文
posted @ 2011-05-31 12:59 Jiang, X. 阅读(243) 评论(0) 推荐(0) 编辑
2011年5月29日
摘要: If you're experiencing frequent crashing when IntelliSense pops up or is dismissed, please download this patch to see whether it resolves the issue. This bug has also been fixed for VS 2010 RTM. 当你的VS智能提示框弹出或时关闭时,如果你频繁的遇到崩溃的问题,那么请下载这个补丁,试试看能否解决问题。目前偶们已经修复了这个VS 2010的Bug。 补丁下载地址: https://connect.m 阅读全文
posted @ 2011-05-29 14:05 Jiang, X. 阅读(226) 评论(0) 推荐(0) 编辑
2011年5月28日
摘要: 今天我们来学习下eip寄存器。。它可存储着我们cpu要读取指令的地址,没有了它,cpu就无法读取下面的指令(通俗点讲cpu就无法执行。每次相应汇编指令执行完相应的eip值就会增加。因为80386 cpu的寻址范围是4GB。所以它的寻址模式是平坦模式的。这里我描述下cpu通过读取eip寄存器执行的大致过程。。 此时我们假设一个程序开始执行了。首先PE loader装载我们的pe文件,读取我们pe文件的基地址和入口RVA地址(相对于基地址的偏移),并且读取相应节表结构的值,然后将我们的程序映射到内存。 此时,映射到内存以后.. 此时PE loader把返回的程序入口点给cpu的eip寄存器赋值.. 阅读全文
posted @ 2011-05-28 20:41 Jiang, X. 阅读(7115) 评论(0) 推荐(2) 编辑
摘要: WinDbg是微软发布的一款相当优秀的源码级(source-level)调试工具,可以用于Kernel模式调试和用户模式调试,还可以调试Dump文件。1. WinDbg介绍: Debugging Tools and Symbols: Getting Startedhttp://www.microsoft.com/whdc/devtools/debugging/debugstart.mspx A word for WinDbghttp://mtaulty.com/communityserver/blogs/mike_taultys_blog/archive/2004/08/03/4656.as. 阅读全文
posted @ 2011-05-28 19:42 Jiang, X. 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 最近实在是太忙了,这篇整整就推迟了1个月了,实在是对不起。之前本打算这个模块就结束了,文件操作就不写了,但是文件操作又是一个很重要的东西,而且也刚好能够总结之前我们学习的所有知识。同时也为了将文件操作这个初学者认为很神秘的东西给本质化。因此,本篇将逐一介绍C语言的文件操作。(本模块的命名本来是想C/C++一块儿讲解的,但是由于工作、毕业论文、业余时间的充电、还有要完成那个未知的梦等,因此因为时间问题C++就只能放在以后有机会再写了,因此本篇将是本模块的最后一篇,之后将不会再连载了,请大家谅解。)好了,回到正题,先来看文件操作中的文件。所谓文件(file)一般指存储在外部介质上数据的集合,比如我 阅读全文
posted @ 2011-05-28 19:03 Jiang, X. 阅读(465) 评论(0) 推荐(0) 编辑
摘要: 本文为Johnpher原创,转载请声明。使用MASM6.1中的ML汇编器来汇编程序,需要在MS-DOS的DOS提示符下输入: ml /c /coff example.asmPs:ml不会像其他的集成开发环境一样在打开编译器后产生一个非常友好的界面,允许你导入自己的源文件之后再进行编译。Ml必须通过DOS的命令实现汇编。如果直接打开ml,则在MS-DOS下会提示:usage : ML [options] filelist [/link linkoptions]Run “ML/help” or “ML/?” for more infoml /c /coff example.asm中各参数的含义为: 阅读全文
posted @ 2011-05-28 09:49 Jiang, X. 阅读(3111) 评论(0) 推荐(0) 编辑
摘要: 作者:Chad Perrin翻译:PurpleEndurer,2010-12-22 第2版分类:*nix, Code Writing, 编写代码, Databases, 数据库, Macros, 宏, Programming, 编程标签:管理员, 智能电话, JavaScript, 代码, 网页浏览器, Web Browser, Programmer, 程序员, Language, 编程语言, Plug-in, 插件, Programming, 编程 中国古代思想家孔子(Confucius)功劳中包括对许多事物发表的见解,从平凡的幸运饼消息(fortune cookie messages)到. 阅读全文
posted @ 2011-05-28 09:45 Jiang, X. 阅读(172) 评论(0) 推荐(0) 编辑
摘要: “ 哎哟,哥们儿,还捣鼓汇编呢?那东西没用,兄弟用VB"钓"一个API就够你忙活个十天半月的,还不一定搞出来。”此君之言倒也不虚,那吾等还有无必要研他一究呢?(废话,当然有啦!要不然你写这篇文章干嘛。)别急,别急,让我把这个中原委慢慢道来:一、所有电脑语言写出的程序运行时在内存中都以机器码方式存储,机器码可以被比较准确的翻译成汇编语言,这是因为汇编语言兼容性最好,故几乎所有跟踪、调试工具(包括WIN95/98下)都是以汇编示人的,如果阁下对CRACK颇感兴趣……;二、汇编直接与硬件打交道,如果你想搞通程序在执行时在电脑中的来龙去脉,也就是搞清电脑每个组成部分究竟在干什么、究 阅读全文
posted @ 2011-05-28 09:43 Jiang, X. 阅读(262) 评论(0) 推荐(0) 编辑
2011年5月25日
摘要: 导读:本文来自softwarecreation上一篇《What do programmers really do?》,译文由伯乐在线整理编译《程序员的本质》。文中阐述了程序员的本质,以及一名优秀程序员所具备的能力。一个优秀的解决方案需要计算机世界与人类世界的双重技能。只有连接起两个世界,才能成为一个真正的优秀程序员。内容如下:很多人(包括我岳母)认为计算机变得如此智能,所以在不久的未来将不再需要程序员。另外一些人认为程序员是天才,他们在电脑前能不断地解决复杂的数学难题。甚至不少程序员对他们是做什么的都没有清晰的概念。Computers are useless. They can only gi 阅读全文
posted @ 2011-05-25 19:06 Jiang, X. 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 消息框是个很常用的控件,属性比较多,本文列出了它的一些常用方法,及指出了它的一些应用场合。1. MessageBox("这是一个最简单的消息框!");2. MessageBox("这是一个有标题的消息框!","标题");3. MessageBox("这是一个确定 取消的消息框!","标题", MB_OKCANCEL );4. MessageBox("这是一个警告的消息框!","标题", MB_ICONEXCLAMATION );5. MessageBox( 阅读全文
posted @ 2011-05-25 12:40 Jiang, X. 阅读(542) 评论(0) 推荐(0) 编辑
摘要: 退出程序用AfxGetMainWnd()->SendMessage(WM_CLOSE);关闭当前窗口用DestroyWindow( );关闭模式对话框用EndDialog(0); 阅读全文
posted @ 2011-05-25 12:25 Jiang, X. 阅读(7402) 评论(0) 推荐(0) 编辑
摘要: 软件开发过程中要极力降低函数之间的耦合度,极力避免某个函数是在某种默认前提条件下才能够执行出理想的结果。 比如,某个函数void Fun(void);所处理的所有数据前提是该类的某个成员变量是一种已得的前提结果。 阅读全文
posted @ 2011-05-25 07:19 Jiang, X. 阅读(411) 评论(0) 推荐(0) 编辑
2011年5月24日
摘要: [MSDN]The default implementation of this function calls the OnUpdate member function with no hint information (that is, using the default values of 0 for the lHint parameter and NULL for the pHint parameter). Override this function to perform any one-time initialization that requires information abo 阅读全文
posted @ 2011-05-24 23:08 Jiang, X. 阅读(442) 评论(0) 推荐(0) 编辑
摘要: 头文件不能相互包含。 阅读全文
posted @ 2011-05-24 23:04 Jiang, X. 阅读(344) 评论(0) 推荐(1) 编辑
2011年4月24日
摘要: //对重名单位进行合并////////////////////////////////////////bool CMainFrame::CombineMedicines(void){//合并同名单位for(int i=0; i<m_stock.size(); i++){//for(int j=i+1; j<m_stock.size(); j++)for(vector<medicine_stock>::iterator iter_2=m_stock[i].medicine.begin(); iter_2 != m_stock[i].medicine.end(); iter 阅读全文
posted @ 2011-04-24 09:18 Jiang, X. 阅读(192) 评论(0) 推荐(0) 编辑
2011年4月13日
摘要: 宽字符函数 普通C函数 描述 iswalnum() isalnum() 测试字符是否为数字或字母 iswalpha() isalpha() 测试字符是否是字母 iswcntrl() iscntrl() 测试字符是否是控制符 iswdigit() isdigit() 测试字符是否为数字 iswgraph() isgraph() 测试字符是否是可见字符 iswlower() ... 阅读全文
posted @ 2011-04-13 16:36 Jiang, X. 阅读(1849) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 下一页