Peekmessage和Getmessage的区别

Peekmessage和Getmessage都是向系统的消息队列中取得消息,不过性质不同。 若第一次向消息队列中取不到消息,则程序的主线程会被OS(操作系统)挂起;等到OS重新调度到该线程时,而且消息队列仍然是空的时,两者的性质不同: 若使用Getmessage(),则程序的主线程会仍被OS挂起。 若是用Peekmessage(),则程序会取得OS控制权,运行一段时间。此函数多用于处理系统的空闲时间。 getmessage and peekmessage are both get the message from send_mess...
经验 | 2008-09-21 00:01 | 阅读 13500 次 | 评论 0 条

PostMessage 和SendMessage的区别

PostMessage 和SendMessage的区别主要在于是否等待其他程序消息处理。PostMessage只是把消息放入队列,不管其他程序是否处理都返回,然后继续执行;SendMessage必须等待其他程序处理消息后才返回,继续执行,阻塞式等待。这两个函数的返回值也不同:PostMessage的返回值表示 PostMessage函数执行是否正确SendMessage的返回值表示其他程序处理消息后的返回值。
经验 | 2008-09-20 23:25 | 阅读 4272 次 | 评论 0 条

AfxMessageBox和MessageBox的区别

MessageBox( LPCTSTR lpszText,LPCTSTR lpszCaption = NULL,UINT nType = MB_OK );是CWnd的类成员函数:AfxMessageBox()是全局函数两个函数的区别:AfxMessageBox比MessageBox简单一些,因为它是一个全局函数所以不需要对应的一个窗口类,但是不能控制消息框标题,常用于调试程序时的内部数据输出或警告;MessageBox比较正式,常用在要提交的应用程序版本中,可以控制标题内容而不必采用含义不明的可执行文件名为标题。如果创建的是MFC应用程序, 当然使用AfxMessageBox比较方便, ...
经验 | 2008-09-20 20:54 | 阅读 9081 次 | 评论 0 条

字符串属性 substr(截取字符串子串)

Copies a substring of at most some number of characters from a string beginning from a specified position. basic_string substr( size_type _Off = 0, size_type _Count = npos // 晕死了,原来这里的_Count是个数) const;Parameters_OffAn index locating the element at the position from which the copy of the strin...
基础知识 | 2008-09-20 16:44 | 阅读 6002 次 | 评论 0 条

VC的高级使用方法之二--由C代码获得相应的汇编代码

主要如 附件中添加 /FA 选项即可在编译后的debug文件夹中生成对应的汇编代码.asm文件相关参数设定:/FA[c|s|u]/Fapathname 备注 参数控制源代码和机器码的生成以及清单文件的扩展名。 下表描述 /FA 的各种不同的值。可为 /FA 指定多个值。例如,可以指定 /FAsu。 选项 清单内容和文件扩展名 /FA 程序集代码;.asm /FAc 机器码和程序集代码;.cod /FAs...
技术 | 2008-09-19 15:58 | 阅读 6602 次 | 评论 2 条

VC中嵌套汇编的方法

以下示例展示了使用汇编调用C语言定义的函数方法而汇编语言又是嵌套在C语言的框架中#include <stdio.h>void funct(){ printf("hello world!\n");}int main(){ __asm { LEA ESI,return_addr PUSH ESI JMP funct return_addr : } return 0;}说明:(1)目前使用 汇编语言标识符 __asm 和 _asm 均正确,不知道这两个由什么区别 (2) vc6.0 下通过,按照正常...
经验 | 2008-09-19 15:26 | 阅读 5451 次 | 评论 0 条

VC的高级使用方法

可能您会经常出现代码缩进未对齐的情况,这时候既影响美观,又很难发现诸如多了一个括号,少了一个括号的错误,这时候就要利用编辑器格式化代码的功能将其调整过来, 在VC6中的快捷键是Alt + F8, 在VC2005中,快捷键是Ctrl + K, Ctrl + F, 这是一个组合键,即先按Ctrl + K, 这时候编辑器会等待下一个按键动作,此时再按Ctrl + F, 即可以格式化代码了,当然,也可以在选项里面设置成使用VC6的快捷键,就可以继续使用Alt + F8了
软件 | 2008-09-18 08:12 | 阅读 4474 次 | 评论 1 条

SendMessage 与 SendDlgItemMessage 的区别

在我的程序中,SendMessage的那种方法没有成功.1.C/C++ codeSendDlgItemMessage(hDlg,IDC_LIST,LB_ADDSTRING,0,(LPARAM)"ListBox");2.C/C++ codeSendMessage(hDlg,WM_COMMAND,MAKEWPARAM(IDC_LIST,LB_ADDSTRING),(LPARAM)"ListBox");原因:SendDlgItemMessage是向对话框中的指定控件发送消息。SendMessage是向指定窗口或者控件发送消息。SendDlgItemMessage(hDlg,IDC_LIST,L...
技术 | 2008-09-17 19:20 | 阅读 11510 次 | 评论 1 条

VC 获取程序当前路径

//获取当前程序的完整路径,包括程序名 CString szPath; GetModuleFileName(NULL,szPath.GetBuffer(MAX_PATH),MAX_PATH); szPath.ReleaseBuffer(); //不包括程序名 ,可放在你的APP文件类里面 CString CXXXXXXApp::GetCurDir() { TCHAR sDrive[_MAX_DRIVE]; TCHAR sDir[_MAX_DIR]; ...
技术 | 2008-09-04 10:48 | 阅读 26379 次 | 评论 1 条

不需要乘除法实现对数运算

Calculate exp() and log() Without Multiplications This page describes a couple of algorithms for computing the elementary mathematical functions log(x) (logarithm to the base e) and exp(x) (e to the power x). The algorithms avoid multiplication and division operations, and are thus suitable ...
算法 | 2008-09-01 19:40 | 阅读 6175 次 | 评论 0 条

Java编译器Eclipse 的版本介绍

Eclipse 是替代IBM Visual Age for Java的下一代IDE开发环境,但它未来的目标不仅仅是成为专门开发Java程序的IDE环境,根据Eclipse的体系结构,通过开发插件,它能扩展到任何语言的开发,甚至能成为图片绘制的工具。目前,Eclipse已经开始提供C语言开发的功能插件。更难能可贵的是, Eclipse是一个开放源代码的项目,任何人都可以下载Eclipse的源代码,并且在此基础上开发自己的功能插件。也就是说未来只要有人需要,就会有建立在Eclipse之上的COBOL,Perl,Python等语言的开发插件出现。同时可以通过开发新的插件扩展现有插件的...
软件 | 2008-09-01 14:00 | 阅读 12621 次 | 评论 1 条

虚函数特性--复习二

[20] Inheritance virtual functions, C++ FAQ LiteFAQs in section [20]: [20.1] 什么是“虚成员函数”? [20.2] C++ 怎样同时实现动态绑定和静态类型? [20.3] 虚成员函数和非虚成员函数调用方式有什么不同? [20.4] 析构函数何时该时虚拟的? [20.5] 什么是“虚构造函数(virtual constructor)”? [20.1] 什么是“虚成员函数”? 从面向对象观点来看,它是 C++ 最重要的特征:[6.8], [6.9]. ...
基础知识 | 2008-08-31 17:28 | 阅读 3722 次 | 评论 0 条

虚函数特性--复习一

虚函数是C++中实现多态的机制。下面通过几个小程序实验来复习一下虚函数的概念用法。 #include class A {public: virtual void f() { cout << "A::f()" << endl; }}; class B : public A{public: void f() { cout << "B::f()" << endl; }}; int main(){ A *a = new B; a->f(); return 0;} 在这个实验中a虽然是指向A,但调用的f()却是B的。 在基类中声明的虚函数在派生类中也是虚的,即使没有加上v...
基础知识 | 2008-08-31 17:24 | 阅读 3487 次 | 评论 0 条

C++Builder平台下 位图显示 程序

#include <vcl.h> // VCL.H是C++Builder专用 2008/8/31#pragma hdrstop#include "DrawBitmap.h"//---------------------------------------------------------------------------#pragma package(smart_init)#pragma resource "*.dfm"TForm1 *Form1;typedef enum // 定义显示位图操作的执行结果{ OK, //成功 FORMATERRO...
未验证 | 2008-08-31 16:55 | 阅读 4194 次 | 评论 0 条

Cygwin的使用方法

By EnterBD[BCT]QQ:4791821E-Mail:Taynni@Gmail.com欢迎转载和指出错误,但请保留以上信息,谢谢.0:简介1:下载和安装2:使用简介Cygwin是一个运行于Windows下的免费的UNIX的子系统,使用一个Dll(动态链接库)来实现,这样,我们可以开发出Cygwin下的UNIX工具,使用这个DLL运行在Windows下,大家可以想一下,你在运行Windows的同时,也可以使用VI,BASH,TAR,SED等UNIX下的工具,不是很好吗?这个VM虚拟机有很相同的原理,但是VM是虚拟多个,而Cygwin是同时使用Windows和UNIX,很爽吧,...
软件 | 2008-08-30 15:50 | 阅读 7596 次 | 评论 0 条

Mex程序简单示例

需要查询一个数组当中最大的几个值。 nmax(x,n) 找数组当中最大的n个元素 nthmax(x,n) 找数组当中第n大的元素 nmin(x,n) 找数组当中最小的n个元素 nthmin(x,n) 找数组当中第n小的元素 在n比较小的时候运算比使用matlab的函数快 找最大或者最小值的时候比使用max或者min函数快,原因估计是Matlab的max和min函数完成的功能不仅仅是找出最大最小值。 首先需要使用配置Matlab的编译器,我没有安装其他的编译器,就是用的Matla...
未验证 | 2008-08-30 14:34 | 阅读 6907 次 | 评论 0 条

多种算法源码网站

http://www.vckbase.com/sourcecode/algorithms/
算法 | 2008-08-30 00:11 | 阅读 5561 次 | 评论 2 条

VS2005 设置问题

1:Error spawning 'cmd.exe'解决方法:TOOLS-->OPTIONS-->Projects and Solutions -> VC++ Directories page and place this rows:$(SystemRoot)\System32$(SystemRoot)$(SystemRoot)\System32\wbem2:no found MSVCR80D.dll解决方法: http://bbs.bccn.net/thread-230441-1-1.html
经验 | 2008-08-29 18:08 | 阅读 3851 次 | 评论 1 条

openwarcom 使用心得

openwarcom 使用心得1. 之前watcom 中创建的 静态库*.lib 文件在现在的openwatcom能正常使用2. 对大小写做出了更加严格的限制, openwatcom中要求函数名的大小写必须一致
经验 | 2008-08-25 13:21 | 阅读 4289 次 | 评论 2 条

gcc 下使用Makefile

载 http://dev.csdn.net/develop/article/17/17584.shtm1、编写Makefile UNIX系统上很多软件包都是使用make程序和Makefile文件来实现自动编译的,make程序的目的就是自动确定一个软件包的哪些部分需要重新编译,并用特定的明令去编译他们,准确的使用make可以大大减少编译程序所花费的时间,因为它可以消除不必要的再编译. 要使用make,必须编写一个makefile文件,他描述了软件包中各个文件之间的联系,提供了更新每个文件的命令.在一个软件包中,通常是可执行文件由连接目标文件而更新,而目标文件由编译源文件而更新. 当一...
技术 | 2008-08-22 18:29 | 阅读 11889 次 | 评论 1 条
浏览1943308次