摘要:(来源网络)1、类型不同BOOL为int型,微软自定义类型:typedef int BOOL;bool为布尔型,为C++标准的数据类型2、长度不同bool只有一个字节BOOL长度视实际环境来定,一般可认为是4个字节,因为它本身是int型3、取值不同bool取值false和true,是0和1的区别BOOL取值FALSE和TRUE,是0和非0的区别如果数个bool对象列在一起,可能会各占一个bit,这...
阅读全文
摘要:用MFC实现文件拖放到ListBox 一.对话框工程:1.建立一个对话框程序,将对话框Extend Style中选中Accept File 选项。2.在对话框中添加一个listbox控件,ID为IDC_DIALOG_LIST,去掉sort style。3、手工添加WM_DROPFILES消息响应,这与自定义消息差不多,但更简单,因为这里不需要你定义WM_DROPFILES;(1)在Dialog.h...
阅读全文
摘要:由ANSI的标准规定, 预处理指令主要包括:#define#error#if#else#elif#endif#ifdef#ifndef#undef#line#pragma由上述指令可以看出, 每个预处理指令均带有符号"#"。下面只介绍一些常用指令。1. #define 指令#define指令是一个宏定义指令, 定义的一般形式是:#define 宏替换名字符串(或数值)由#define指令定义后, ...
阅读全文
摘要:CTRL+D 查看并修改tab顺序CTRL+INS 拷贝CTRL+C 拷贝SHIFT+DEL 剪切CTRL+X 剪切SHIFT+INS 粘贴CTRL+V 粘贴CTRL+F 查找CTRL+H 替换CTRL+L 删除一行ALT+F2 编辑和修改书签(永久书签)CTRL+F2 编辑和修改书签(临时书签,当文件关闭后,书签就无效了)ALT+F8 选定几行代码以后,按下Alt+F8,使选定的代码按照C语言约...
阅读全文
摘要:由于Windows程序一般很长,编程人员在一段时间后自己都有可能忘记所定义的变量的含义。为了帮助大家记忆与区分变量,微软公司创建了Windows的命名约定,称之为匈牙利表示法(Hungarian notation)。匈牙利表示法提供了一组前缀字符,如表1.1所示,这些前缀也可以组合起来使用。表1.1 匈牙利表示法 前 缀 含 义 a 数组 b 布尔值(int) by 无符号字符(字节) c 字符(...
阅读全文
摘要:VIRIANT是ACTIVEX AUTOMATION需要用到的一种变量类型,可以称之为通用数据类型,其实它是一个结构。如果仅仅是调用ACTIVEX对象所提供的METHOD不需知道其中的细节。它仅用于通过IDISPATCH接口调用特定的METHOD或属性时用,VB和VC已经将这一过程透明。换句话说,VC会自动转换简单数据类型。 关于下面的几个METHOD,例如OPENURL,在MFC中是:CStdi...
阅读全文
摘要:下面这些是和Win32程序共同使用的数据类型BOOL:布尔值,取值为TRUE or FALSEBSTR:32-bit 字符指针BYTE:8-bit整数,未带正负号COLORREF:32-bit数值,代表一个颜色值DWORD:32-bit整数,未带正负号LONG:32-bit整数,带正负号LPARAM:32-bit整数,作为窗口函数或callback函数的一个参数LPCSTR:32-bit指针,指向...
阅读全文
摘要:很多的程序,发现很大的一部分bug是关于MFC类中的Cstring的错误用法的.出现这种错误的原因主要是对Cstring的实现机制不是太了解。Cstring是对于原来标准c中字符串类型的一种的包装。因为,通过很长时间的编程,我们发现,很多程序的bug多和字符串有关,典型的有:缓冲溢出、内存泄漏等。而且这些bug都是致命的,会造成系统的瘫痪。因此c++里就专门的做了一个类用来维护字符串指针。标准c+...
阅读全文
摘要:通过阅读本文你可以学习如何有效地使用 CString。 CString 是一种很有用的数据类型。它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多。不管怎样,使用CString有很多特殊的技巧,特别是对于纯C背景下走出来的程序员来说有点难以学习。这篇文章就来讨论这些技巧。 使用CString可以让你对字符串的操作更加直截了当。这篇文章不是CString的完全手册,...
阅读全文
摘要:int i = 100;long l = 2001;float f=300.2;double d=12345.119;char username[]="程佩君";char temp[200];char *buf;CString str;_variant_t v1;_bstr_t v2;一、其它数据类型转换为字符串1.短整型(int)itoa(i,temp,10);///将i转换为字符串放入temp...
阅读全文
摘要:首先看看下面的代码:char *p; p="abc"; 你认为是对的吗? 答案:语法上是对的,但不提倡这种写法。误区1:没有给p分配内存空间就赋值,怎么会是对的呢? 正解:不少人第一眼将这里的p="abc"看成了*p="abc",然后就做出了以上的论断。这是比较笨笨的错误。看清楚就好啦,其实赋给p的是"abc"的地址。再说,*p="abc"也不对呀,字符串可不能这么赋值。误区2:这"abcd"哪来...
阅读全文
摘要:Visual C++作为一种程序设计语言,它同时也是一个集成开发工具,提供了软件代码自动生成和可视化的资源编辑功能。在使用Visual C++开发应用程序的过程中,系统为我们生成了大量的各种类型的文件,下面将要详细介绍Visual C++中这些不同类型的文件分别起到什么样的作用,在此基础上对Visual C++如何管理应用程序所用到的各种文件有一个全面的认识。1.扩展名为dsw的文件类型,这种类型...
阅读全文
摘要:if(OpenClipboard()){ CString sPrjPath="wwwww"; //复制到剪切板的内容 EmptyClipboard(); HGLOBAL hClipboardData; hClipboardData = GlobalAlloc(GMEM_DDESHARE, sPrjPath.GetLength() + 1); char* pchData; pchData = (c...
阅读全文
摘要:/*********************************************************** 功能:求输入日期是星期几 (0表示星期天,其余为 1-6)** 日期:2006-6-16** **********************************************************/int CMy33Dlg::SW_WeekDay(int year...
阅读全文
摘要:CString strm;strm="sdfsf sfsf sfsf";if(strm.Find(' ')!=-1){ MessageBox("发现空格!"); }else{ MessageBox("没有发现空格"); }
阅读全文