摘要: 一、基于CRITICAL_SECTION的同步 基于CRITICAL_SECTION的同步中将创建并运用“CRITICAL_SECTION对象”,但这并非内核对象。与其他同步对象相同,它是进入临界区的一把“钥匙”。离开时需要上交CRITICAL_SECTION对象。 其中lpCriticalSect 阅读全文
posted @ 2018-07-19 16:01 cpluspluser 阅读(5656) 评论(0) 推荐(0) 编辑
摘要: 内核对象 在Windows中,有许多不同的资源,如进程、线程、事件、文件,信号量等等,其中大部分都是通过不同的函数请求创建的。系统管理这些不同资源的方式也不尽相同,如使用CreateFile创建文件时,我们需要传入文件的打开模式,若是线程,我们则应该注册并维护线程ID,线程所属进程等信息。 系统为了 阅读全文
posted @ 2018-07-19 16:00 cpluspluser 阅读(382) 评论(0) 推荐(0) 编辑
摘要: 调用WinAPI实现剪切板操作的函数: 常用的剪切板数据类型(还包括很多其它类型,详情可参考MSDN) 需要使用Win32内存块与剪贴板交互,常用Win32内存块操作函数(另有LocalAlloc等,功能完全相同): 复制(向剪贴板内容)操作流程 : 一、创建一块内存块 1. 分配一个适当大小的内存 阅读全文
posted @ 2018-07-19 15:53 cpluspluser 阅读(3066) 评论(0) 推荐(0) 编辑
摘要: MSDN描述: CONTAINING_RECORD returns the base address of an instance of a structure given the type of the structure and the address of a field within the 阅读全文
posted @ 2018-07-19 15:51 cpluspluser 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 二叉搜索树是一种结合了折半搜索策略的链接结构。树中的每一个节点都包含一个项目和两个指向其他节点(称为子节点,child node)的指针。这种构思是每一个节点都有两个子节点,左节点和右节点。其顺序按如此排列:在左节点中的项目是父节点中项目的前序列,而在右节点中的项目是父节点中项目后序项。这种关系存在 阅读全文
posted @ 2018-07-19 15:50 cpluspluser 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 求两个数的最大公约数有多种算法,如:辗转相除法,辗转相减法以及短除法等等。 最大公约数的重要性质 gcd(a, b) = gcd(b, a) gcd( a, b) = gcd(a, b) gcd(a, a) = |a| gcd(a, 1) = 1 gcd(a, b) = gcd(b, a mod b 阅读全文
posted @ 2018-07-19 15:47 cpluspluser 阅读(459) 评论(0) 推荐(0) 编辑
摘要: 在windows中有多种文件,图片、视频、音乐等等。此些文件皆存于磁盘上,只是存储格式不同。此外,管道、邮槽,亦或是设备对象,于windows而言,皆为文件。 1. 文件的打开和关闭 与c,c++操作文件一样,要操作文件,首先需要打开文件。文件打开成功后会返回一个可用于操作文件的句柄,通过此句柄便可 阅读全文
posted @ 2018-07-19 15:06 cpluspluser 阅读(2508) 评论(0) 推荐(0) 编辑
摘要: 注册表和文件的操作差不多,也存在打开,关闭,写入,查询等操作,使用的所有API函数皆以Reg开头。 1. 打开和关闭注册表 对注册表操作前,需通过API函数打开注册表,并返回用于操作注册表的句柄,通过此句柄,来对注册表进行读写操作。 打开注册表 在Win16下,还有一个RegOpenKey()函数, 阅读全文
posted @ 2018-07-19 15:01 cpluspluser 阅读(2080) 评论(0) 推荐(1) 编辑
摘要: 一、RSA简述 RSA是公钥密码的一种代表算法,它可以被用于公钥密码和数字签名。 二、RSA加密 在RSA中,明文、私钥和密文都是数字。它的加密过程是这样的: 密文 = 明文 ^ E % N 也即是说,RSA的密文是对明文的数字的进行E次方计算,然后再进行求模得到的。这就是RSA的整个加密过程。 在 阅读全文
posted @ 2018-07-19 14:57 cpluspluser 阅读(1614) 评论(0) 推荐(0) 编辑
摘要: ```java import java.io.*; public class MyLineNumberReader extends BufferedReader { private int line = 0; //行号 public MyLineNumberReader(Reader r) { super(r); } public void setLineNumber(int... 阅读全文
posted @ 2018-07-19 14:55 cpluspluser 阅读(469) 评论(0) 推荐(0) 编辑
摘要: ```java import java.io.*; public class MyBufferedReader { private FileReader fr; MyBufferedReader(FileReader fr) { this.fr = fr; } //可以一次性读一行数据的方法 public String myReadLine() throws IOExcept... 阅读全文
posted @ 2018-07-19 14:54 cpluspluser 阅读(526) 评论(0) 推荐(0) 编辑
摘要: 一、简述 异常: 就是程序在运行时出现不正常情况。 异常由来: 问题也是现实生活中一个具体的事物,也可以通过java的类的形式进行描述。并封装成对象。其实就是java对不正常情况进行描述后的对象体现。 对于问题的划分: 严重的问题。 非严重的问题。 对于严重的,java通过Error类进行描述。对于 阅读全文
posted @ 2018-07-19 14:49 cpluspluser 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 一、简述 在字符串比较时,简单的操作可以使用一些算法来查找或匹配,如要判断一个端口地址地址是否合法,可以简单的判断其是否在0 65536之间。 但是,有一些字符匹配操作使用这种方法非常复杂,如匹配一个QQ号: 1. 首先先检测该QQ号的长度是否大于等于5位并且小于等于11位; 2. 然后还需判断第一 阅读全文
posted @ 2018-07-19 14:44 cpluspluser 阅读(423) 评论(0) 推荐(0) 编辑
摘要: 此篇於戊戌年正月初一書,始於三十夤夜,窗外炮聲不絕,無以入睡,乃拿出《紅樓夢》細細品之,有此拙文。 雖是新春盛景,卻猶感孤寂萬分,唯有獨處靜處讀書,才覺心曠神怡。有言說,熱鬧是一羣人的孤獨,似是此理。獨走冷風中,唯有書爲伴。 [引子] 萬戶齊鳴,誰為此景?都只為佳節新春。趁著這暖陽天,春風日,歡樂時 阅读全文
posted @ 2018-07-19 14:32 cpluspluser 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 本篇作于高三之时,仿写自红楼梦的《金陵十二钗十二支判曲》。 当是时,余学识谫陋,语基微薄,所读书目亦不多。但好习文,最喜红楼,慢自摸索,终小有所得。此为当时最喜之文,非其绝妙,仅以记当时生活之态,摸索之心。 依稀有记,初耗四时,细思慢改,渐有雏形,又以精修删查,融高三之生活,书心中之志气,以成。试前 阅读全文
posted @ 2018-07-19 14:26 cpluspluser 阅读(167) 评论(0) 推荐(0) 编辑