摘要:
一、 预备知识—程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分:程序代码区(.text) — 存放函数体的二进制代码 文字常量区(.rodata) — 常量字符串就是放在这里的, 程序结束后由系统释放。全局区(静态区)(static)— 全局变量 和 静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域...
阅读全文
posted @ 2010-11-10 12:33
人间奇迹
阅读(1956)
推荐(0)
摘要:
1.TRACE1.1.TRACE的宏定义同样的,我们先从TRACE的宏定义开始研究,TRACE被定义在AFX.H中。但是我在这个H文件查找时,并没有发现TRACE被#define成某个函数。虽然你会发现类似的下面两行代码: #define TRACE __noop///////////////////////////////////#define TRACE ATLTRACE但是,ATL的宏定义并...
阅读全文
posted @ 2010-10-11 15:52
人间奇迹
阅读(4458)
推荐(1)
摘要:
代码1: #include <stdio.h> #include <stdlib.h> int main( void ) { int i ; int buffer[10]; FILE *fp; if((fp=fopen("e:\\cx\\72\\未命名29.c", "wb+" )) == NULL ) { printf("不...
阅读全文
posted @ 2010-10-08 14:55
人间奇迹
阅读(900)
推荐(0)
摘要:
逻辑调色板结构LOGPALETTE,该结构定义如下: typedef struct tagLOGPALETTE { WORD palVersion; //调色板的板本号,应该指定该值为0x300; WORD palNumEntries;//调色板中的表项数,对于灰度图像该值为256; PALETEENTRY palPalEntry[1];//调色板中的颜色表项,由于该表项的...
阅读全文
posted @ 2010-09-19 14:47
人间奇迹
阅读(10745)
推荐(0)
摘要:
DIB设备无关位图文件,这是一种文件格式,是为了保证用某个应用程序创建的位图图形可以被其它应用程序装载或显示一样。 DIB的与设备无关性主要体现在以下两个方面:DIB的颜色模式与设备无关。例如,一个256色的DIB即可以在真彩色显示模式下使用,也可以在16色模式下使用。256色以下(包括256色)的DIB拥有自己的颜色表,像素的颜色独立于系统调色板。由于DIB不依赖于具体设备,因此可以用来永久性地...
阅读全文
posted @ 2010-09-16 23:07
人间奇迹
阅读(2315)
推荐(0)
摘要:
一、概述 在Windows中每屏是一个图形图像,灵巧的Windows制作系统,面对庞大的图形编程任务,建立了为绘画多彩的边界、按钮、图标、字体的函数库。当然啦,通过Windows API,这些函数都是可调用的。所谓Windows显示屏幕以及数量众多的打印机其实都是属于“光栅设备”。在光栅设备中,一幅图象由多条扫描线以及能访问的单独像素构成。Windows也支持非光栅设备,比...
阅读全文
posted @ 2010-09-16 20:32
人间奇迹
阅读(2619)
推荐(0)
摘要:
在DLL编写时,使用__declspec(dllexport)的作用,它就是为了省掉在DEF文件中手工定义导出哪些函数的一个方法。当然,如果你的DLL里全是C++的类的话,你无法在DEF里指定导出的函数,只能用__declspec(dllexport)导出类。但是,MSDN文档里面,对于__declspec(dllimport)的说明让人感觉有点奇怪,先来看看MSDN里面是怎么说的: ̶...
阅读全文
posted @ 2010-09-15 11:46
人间奇迹
阅读(2103)
推荐(0)
摘要:
一、链接方式 与 lib库 概述 静态链接: 就是把文件中用到的函数代码直接链接进目标程序,程序运行的时候不再需要其它的库文件; 动态链接: 就是把调用的函数所在文件模块(DLL)和调用函数在文件中的位置等信息链接进目标程序,程序运行的时候再从DLL中寻找相应函数代码,因此需要相应DLL文件的支持。 静态链接库与动态链接库都是共享代码的方式,然而 (1)、如果采用静态链接库,则无论你愿不...
阅读全文
posted @ 2010-09-15 11:17
人间奇迹
阅读(1608)
推荐(0)
摘要:
1.引言 C++语言的创建初衷是 “a better C”,但是这并不意味着C++中类似C语言的全局变量和函数所采用的编译和连接方式与C语言完全相同。作为一种欲与C兼容的语言,C++保留了一部分过程式语言的特点(被世人称为“不彻底地面向对象”),因而它可以定义不属于任何类的全局变量和函数。但是,C++毕竟是一种面向对象的程序设计语言,为了支持函数的重...
阅读全文
posted @ 2010-09-15 10:39
人间奇迹
阅读(1606)
推荐(1)
摘要:
(一)、VS2008添加 lib库 与 dll库 方法 方法一: 1. 点击菜单命令 “项目/属性”,弹出项目属性对话框;或者在解决方案视图或类视图中,右击项目名称,选“属性”,弹出项目属性对话框; 2. 在弹出对话框的活动配置中,选择“配置属性/链接器/输入/附加依赖项”,即可输入待加入的lib库文件,添加完毕点击&...
阅读全文
posted @ 2010-09-15 10:16
人间奇迹
阅读(342)
推荐(0)