2012-07-12 07:33
⁄ 工业·编程
⁄ 共 1620字
今天整理了一些#define的用法,与大家共享! 1.简单的define定义 #define MAXTIME 1000 一个简单的MAXTIME就定义好了,它代表1000,如果在程序里面写 if(i<MAXTIME){.........} 编译器在处理这个代码之前会对MAXTIME进行处理替换为1000。 这样的定义看起来类似于普通的常量定义CONST,但也有着不同,因为define的定义更像是简单的文本替换,而不是作为一个量来使用,这个问题在下面反映的尤为突出。...
c++阅读全文
2012-07-12 07:30
⁄ 工业·编程
⁄ 共 87字
++i相当于 i = i + 1; return i;
而i++相当于 int j = i; i = i+1; return j;
由于i++还必须copy值给j,所以速度较慢。
相信很多人都习惯i++吧,呵呵。
c++阅读全文
2012-07-12 07:23
⁄ 工业·编程
⁄ 共 1937字
你所遇到的这几个宏是为了进行条件编译。一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条件编译”。有时,希望当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句。
条件编译命令最常见的形式为: #ifdef 标识符 程序段1 #else 程序段2 #endif ...
c++阅读全文
2012-07-12 07:19
⁄ 工业·编程
⁄ 共 383字
1.前言 C++项目中如果代码层次结构不好,非常容易变得难以维护。对于规模较大的项目而言,必须将整个项目划分成若干模块进行开发。 2.模块 模块包括可执行文件,动态库和静态库。 2.1应用层 最上层为应用层,表现为可执行文件。 本层代码应主要进行界面控制,尽量不要涉及复杂逻辑。 2.2动态库层 动态库层作为逻辑模块的主体。采用动态库的好处是将复杂应用拆分成可以独立分发的子模块,便于...
c++阅读全文
2012-07-12 06:56
⁄ 工业·编程
⁄ 共 1533字
malloca/alloca: 内存分配函数,与malloc,calloc,realloc类似。但是注意一个重要的区别,_alloca是在栈(stack)上申请空间,用完马上就释放。 alloca包含在头文件malloc.h中,在某些系统中会宏定义成_alloca使用。 注意: 1)在调用 alloca的函数返回的时候, 它分配的内存会自动释放。也就是说, 用 alloca 分配的内存在栈上。所以释放不需要用户使用free. 2)alloca不具可移植性,而且在没有传统堆栈的机器上...
c++阅读全文
2012-07-12 00:37
⁄ 工业·编程
⁄ 共 6297字
UNICODE环境设置 在安装Visual Studio时,在选择VC++时需要加入unicode选项,保证相关的库文件可以拷贝到system32下。
UNICODE编译设置: C/C++, Preprocessor difinitions 去除_MBCS,加_UNICODE,UNICODE 在ProjectSetting/link/output 中设置Entry为wWinMainCRTStartup 反之为MBCS(ANSI)编译。
Unicode :宽字节字符集
1. 如何取得一个既包含单字节字符又包含双字节字符的字符串的字符个数? 可以调用M...
unicode, windows阅读全文
2012-07-11 23:08
⁄ 工业·编程
⁄ 共 882字
C++提供的预处理功能主要有以下3种
1、宏定义
2、文件包含
3、条件编译
为了与一般C++语句相区别,这些命令以符号#开头,而且末尾不包含分号
宏定义
用#define命令将一个指定的标识符(即宏名)来代表一个字符串。定义宏的作用一般是用一个短的名字代笔一个长的字符串。它的一般形式
#define 标识符 字符串
在C语言中用#define定义符号常量,由于C++已增加了const语句以定义常变量,因此#define在实际上已不多用
#def...
c++阅读全文
2012-07-11 22:51
⁄ 工业·编程
⁄ 共 5124字
动态链接库 (DLL)是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件。动态链接提供了一种方法,使进程可以调用不属于其可执行代码的函数。函数的可执行代码位于一个DLL中,该DLL包含一个或多个已被编译、链接并与使用它们的进程分开存储的函数。DLL还有助于共享数据和资源。多个应用程序可同时访问内存中单个 DLL副本的内容。
1 DLL基本编程原理分析
一般来说,DLL是一种磁盘文件(通常带...
dll, VC阅读全文
2012-07-11 22:32
⁄ 工业·编程
⁄ 共 3737字
VC编程精粹需要进行内存的动态分配和释放操作,本文总结常用的VC对内存的操作方法并比较他们之间的区别,以便于读者能够加深对他们的理解并根据项目的实际情况选用适合自己的方案。
1、GlobalAlloc() The GlobalAlloc function allocates the specified number of bytes from the heap. Windows memory management does not provide a separate local heap and global heap. Note The global functions ar...
VC阅读全文
2012-07-11 22:28
⁄ 工业·编程
⁄ 共 363字
CString EncodeChinese(CString InputStr) { int cur; CString tempstr,returnstr; CString ws,temp1; WCHAR mid[2]; ws.Format("%s",InputStr); cur=ws.GetLength(); for(int i=0;i<ws.GetLength();i++) { temp1=ws.Mid(i,2); MultiByteToWideChar(CP_ACP,0,temp1.GetBuffer(0),-1,mid,2); cur=mid[0]; if(cur>0x...
MFC阅读全文