suncode

  博客园 :: 首页 :: 新随笔 :: :: :: 管理 ::

2011年3月3日

摘要: 1、栈区(stack) 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。3、全局区(静态区)(static)全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。-程序结束后有系统释放4、文字常量区常量字符串就是放在这里的。程序结束后由系统释放。5、程序代码区存放函数体的二进制代码。 阅读全文
posted @ 2011-03-03 21:37 suncode 阅读(254) 评论(0) 推荐(0)

摘要: 剪贴板定义剪贴板是由操作系统维护的一块内存区域,这块内存区域不属于任何单独的进程,但是每一个进程又都可以访问这块内存区域,而实质上当在一个进程中复制数据时,就是将数据放到该内存区域中,而当在另一个进程中粘贴数据时,则是从该块内存区域中取出数据。相关API剪贴板的打开 – OpenClipboardBOOL OpenClipboard(HWNDhWndNewOwner);hWndNewOwner指向一个与之关联的窗口句柄,即代表是这个窗口打开剪贴板,如果这个参数设置为NULL的话,则以当前的任务或者说是进程来打开剪贴板。如果打开剪贴板成功,则该函数返回非0值,如果其他程序已经打开了剪贴板,那么当 阅读全文
posted @ 2011-03-03 20:36 suncode 阅读(888) 评论(0) 推荐(0)

摘要: 简单理解Windows的消息消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了。消息一般用一个32位的数来标识,这个数唯一地标识这个消息。这些消息的标识符一般在头文件winuser.h 中定义,如: #define WM_PAINT 0x000F #define WM_QUIT 0x0012 其实消息本身是一个MSG结构。MSG结构定义如下:typedef struct tagMSG{ HWND hwnd; //接受消息的窗口句柄 UINT message; //消息标识符 WPARAM wParam; //32位附加信息 LPARAM lParam; //32位附加信息 D 阅读全文
posted @ 2011-03-03 20:06 suncode 阅读(2009) 评论(0) 推荐(2)

摘要: D7, classes tstrings 没有strictdelimiter属性,在string转tstrings时,不能分别字符串带空格的情况,View Code function StrToStrs(s:string,cp:chr, rs_s:^TStrings);Var T : integer;begin T := 1; While True do begin if PosEx(cp,s,T) = 0 then begin rs_s.Add(Midstr(s,T,Length(s)-T+1)); Break; end; rs_s.Add(Midstr(s,T,(PosEx(cp,s,T) 阅读全文
posted @ 2011-03-03 16:56 suncode 阅读(2065) 评论(0) 推荐(0)