摘要: 在golang中,我们使用defer语句来进行一些错误处理和收尾工作,它的作用类似java里面finally关键字的作用。不过不论是java的finally关键字还是c++的Raii类,我们都能清楚地知道它们的作用域和执行的时机,那么golang中defer关键字所处理的内容是在什么时候执行的呢?h 阅读全文
posted @ 2017-05-23 17:06 stormpeach 阅读(2856) 评论(0) 推荐(0) 编辑
摘要: 1、堆和栈的区别与联系 1、栈区由编译器自动分配内存释放;堆区一般由程序员手动分配释放,若不释放,结束时可能由OS回收 2、堆的分配可能会有碎片,栈不会有这个问题 3、堆都是动态分配的,栈有动态和静态两种分配方式 4、栈的效率比堆高(所以现在很多带gc的语言的一个优化方向就是尽量把内存分配在栈上,这 阅读全文
posted @ 2017-05-23 16:32 stormpeach 阅读(836) 评论(0) 推荐(0) 编辑
摘要: 一、Outlook Object Model简介 Outlook Object Model(OOM)是outlook为开发者提供的一个COM组件,我们可以在程序中使用它来发送邮件、管理邮箱等。相关介绍可以参见以下链接: https://msdn.microsoft.com/en-us/libra... 阅读全文
posted @ 2015-09-15 13:33 stormpeach 阅读(2423) 评论(0) 推荐(0) 编辑
摘要: 一、基础研究我们在这里要理解和实现一种最基本的数据结构:链表。首先看看实现的程序代码:List.h:事实上我们观察list.h发现前面一部分是数据结构的定义和函数的声明,后面一部分是函数的实现。我们仅仅观察前面一部分就可以知道这个链表的结构是怎么实现的了。程序将处理的对象分成了三类:线性表、结点和元... 阅读全文
posted @ 2015-03-25 17:44 stormpeach 阅读(7837) 评论(0) 推荐(1) 编辑
摘要: 一、基础研究先对函数fa进行研究,代码如下:fa函数的参数为一个字符指针,他存储要输出的字符串。因为要显示在屏幕的中央位置,所以我们要把字符串放在段地址b800处。用strlen获取字符串的长度,因为屏幕为25行80列,所以如果字符串长度超过80,即一行放不下,那么就执行if后面的语句,这时要确保字... 阅读全文
posted @ 2015-03-25 17:35 stormpeach 阅读(2546) 评论(0) 推荐(0) 编辑
摘要: 一、基础研究观察如下两个程序a.c和b.c:A.c:B.c:这两个程序都是要实现在屏幕上第10行40列打印一个绿色的字符c:这两个程序的数据组织方式是一样的,都是使用结构体,而且对共性和个性的分离的思路也是一样的,都是将共性封装在main函数里,将个性实现在子函数里。但是a.c和b.c封装和分离的角... 阅读全文
posted @ 2015-03-25 17:28 stormpeach 阅读(4077) 评论(0) 推荐(0) 编辑
摘要: 一、基础研究之前基于tcc、tlink实现一个新的编译连接工具cc.exe,用到的文件有cs.lib、c0s.obj、main.obj,其中main.obj是我们自己加入的文件,它可以实现开始显示彩色字符串“welcometoc”,等待用户按键后执行程序,现在我们要把它替换为下面的程序编译成的obj... 阅读全文
posted @ 2015-03-25 17:20 stormpeach 阅读(415) 评论(0) 推荐(0) 编辑
摘要: 一、基础研究在这里我们需要提供一套新的c语言开发工具cc,它支持的c程序不是从main开始运行而是从CMain开始运行。书上已经对该工具程序进行了需求分析:(1)要在屏幕中间显示彩色的字符串;(2)等待用户输入,按下任意键后开始运行程序员写的程序。也给出了由需求分析进行的功能分析:代码文件main.... 阅读全文
posted @ 2015-03-24 21:12 stormpeach 阅读(1465) 评论(0) 推荐(0) 编辑
摘要: 一、基础研究观察这两个程序:Menu.h:Ues.c:程序执行的结果是在屏幕上显示一个三行的菜单:用户按键选择菜单的某一项可以在屏幕上显示该项所表示的彩色字符串:它是如何实现的呢?我们先来看看menu.h。程序构造了一个结构体,并将菜单的相关信息都放在结构体里。这里有个问题:我们之前定义结构体都是用... 阅读全文
posted @ 2015-03-24 21:04 stormpeach 阅读(433) 评论(0) 推荐(0) 编辑
摘要: 一、基础研究我们之前从底层研究了c语言,也学习了c语言的组成部分和使用方法,但是c语言是一门编程语言,它是要用来编写程序的。要编写一个好的程序,首先要弄清这个程序要干什么,也就是需求分析,之后要思考及确定实现这个目标的方法,怎么样让程序简短、高效、易懂、可移植、方便维护和修改,这涉及到要怎么实现算法... 阅读全文
posted @ 2015-03-24 20:56 stormpeach 阅读(823) 评论(0) 推荐(0) 编辑