结构体中冒号的含义 C99规定int、unsigned int和bool可以作为位域类型,但编译器几乎都对此作了扩展,允许其它类型类型的存在。使用位域的主要目的是压缩存储,其大致规则为:1)如果相邻位域字段的类型相同,且其位宽之和小于类型的sizeof大小,则后面的字段将紧邻前一个字段存储,直到不能容纳为止;2)如果相邻位域字段的类型相同,但其位宽之和大于类型的sizeof大小,则后面的字段将从新
STL中list用法 STL中list的使用:STL中的list就是一双向链表,可高效地进行插入删除元素。现总结一下它的操作。文中所用到两个list对象c1,c2分别有元素c1(10,20,30) c2(40,50,60)。还有一个list::iterator citer用来指向c1或c2元素。list对象的声明构造():A. listc0; //空链表B.
访问硬件示例 访问键盘控制器 控制一个芯片首先要知道它的地址,大多数PC上的8259键盘控制器在地址0x60和0x64上是可寻址的,这些位置有时称为端口(port),因为它们提供了进入硬件芯片的入口。在使用DDK时,有多个宏可以读写这些端口:READ_PORT_UCHAR ();WRITE_PORT_UCHAR();另外也可以使用汇编指令.示例代码如下所示,感兴趣的话可以自己试试:#in
Windows内核编程的一个小例子 #include "ntddk.h"void Example1Unload(IN PDRIVER_OBJECT pDrvobj){UNICODE_STRING usDosDevName;DbgPrint("Example1: Driver is being unload.");RtlInitUnicodeString(&usDosDevName, L
访问硬件 大多数的硬件设备都有一个可以再某处进行寻址的微芯片。将数据移入和移出微芯片都需要一个地址,通常这个地址是预先知晓的并且固化到系统中的。地址总线包含许多细线,其中一些连至每个微芯片,因此通过在内存中指定一个要写入的地址,实际上就选择了一个微芯片。大多数的硬件都有某种控制器芯片,它给出一个可寻址的内存位置,有时称为端口(port),读写端口可能需要特殊的操作码指令:一些处理器具有特殊指令集,必须使用它
UML中几种类间关系:继承、实现、依赖、关联、聚合、组合的联系与区别 继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性;实现指的是一个class类实现interface接口(可以是多个)的功能;实现是类与接口之间最常见的关系;在Java中此类关系通过关键字 impl
解析UML箭头、线条代表的意义 在学习UML过程中,你经常会遇到UML类图关系,这里就向大家介绍一下UML箭头、线条代表的意义,相信通过本文的介绍你对UML中箭头、线条的意义有更明确的认识。AD:本节向大家学习一下UML箭头、线条代表的意义,UML中关系主要有依赖,聚合,合成,泛化和实现等,下面就让我们来看一下这些关系如何用UML箭头和线条来实现。UML箭头、线条程序关系后面的例子将针对某个具体目的来独立
步步高应届生解约事件 据称是步步高20多年来首次解约,自称缘于对形势判断失误 传奇创始人段永平表示“内疚”,连发近30条微博回应学生 作为10年前的“老总”,我依然为公司需要裁人感到内疚。经营企业有时候确实需要去做一些非常艰难的决定。 ———步步高创始人段永平 “段总人非常好,不遮不掩,客观地直面问题,不像其他人还请公关公司做一些事。 ———被解约学生(微博名“雙唲”) “作
设计模式(1) 虽然小弟是夸专业学习的计算机,但对于第一次听说设计模式也是倍感羞愧。于是马上搜索了一些资料。原来设计模式真是在架构设计方面处于十分重要的地位。在网上搜索到一份笔记《设计模式精解-GOF23种设计模式解析》感觉不错,尤其是对初学者,我觉得设计模式可以先对其有个大概的感念,当在实际的工作中需要设计架构时,在详细研究每种结构的优缺点也不迟,下面就分享一下自己的感悟。设计模式分为三类模式:创建型模式,
苹果黄牛事件真相 名为“蛊惑奇葩”的网友作为果粉在得出所谓的苹果黄牛事件真相后,写下了下面的文字,可是这真的是事情的全部真相吗?您又是如何看待这个问题的呢? 尽管之前已经猜到一些,但是当证实的时候还是震惊了我。 我想大多数人也已经发现了一些蛛丝马迹,比如为什么黄牛会有苹果的发货箱,比如为什么保安对黄牛态度的暧昧,比如为什么现在的媒体是偏向黄牛。可是,你们可曾想到,黄牛的后台真正大老板就是苹果自己。
Windows 8一推出就会死亡? ZDNET作者尼克尔斯(Steven J. Vaughan-Nichols )昨天发表评论文章,称Windows 8一推出就会死亡。评论文章如下:我有一些顽固的Windows朋友,他们对于今年晚期推出的Windows 8十分激动。还有一些人则担心,Windows 8会重复Vista灾难。我自己呢?我也认为Windows 8会像Vista一样惨败。 我认为到2016年,大多的PC用户仍会使用
STL温习 STL是提供了一组表示容器、迭代器、函数对象和算法的模板。容器类似数组,可以存储若干个值。迭代器能够用来遍历容器的对象,与能够遍历数组的指针类似,是广义指针;函数对象时类似于函数的对象,可以是类对象或函数指针,算法是完成特定任务的处方。 Vector对应容器,创建vector的方法如下:#include vectorusing namespacestd;vectorrating
最容易被老板炒掉的十类人 1、薪水太高,贡献平平:薪水随着年资和公司成长愈来愈高,但无法提供其它附加价值和同业比,薪水明显偏高,就必须很小心。假如又没有独特的附加价值,很容易被更年轻、要便宜的人才取代。老板通常是能少给一分钱决不会多给一分钱。找到机会,换血也是节省成本的一种方式。2、居功自傲,目无老板:对公司有些贡献就居功自傲,老提过分要求,索要过度资源,甚至不把老板放在眼里。其实这个世界缺少了任何人都照转,公司其
C与C++的名称修饰符 一个完整的函数声明包括返回值类型,调用协议名称,函数名称,参数信息等若干部分,为了把函数的所有原型信息记录在单一的字符串中以便于标识和组织函数,VC编译器使用了一种称为名称修饰(Name Decoration)的技术,其宗旨就是将函数的本来名称,调用协议,返回值信息按照一定的规则编排成一个新的名字,称为修饰名称(Decorated Name)。下面看一个函数TestFunction的原型和它的修饰
据说研读完这21个故事的人都成了富翁 故事1.甲去买烟,烟29元,但他没火柴,跟店员说:“顺便送一盒火柴吧。”店员没给。 乙去买烟,烟29元,他也没火柴,跟店员说:“便宜一毛吧。”最后,他用这一毛买一盒火柴。 这是最简单的心理边际效应。第一种:店主认为自己在一个商品上赚钱了,另外一个没赚钱。赚钱感觉指数为1。第二种:店主认为两个商品都赚钱了,赚钱指数为2。当然心理倾向第二种了。同样,这种心理还表现在买一送一的花招上
2011年离世的IT大师们 美国IT网站eWeek撰文,纪念了2011年去世的IT大师们,其中,苹果联合创始人史蒂夫·乔布斯位居首位。 以下为文章全文: 除了苹果联合创始人史蒂夫·乔布斯和C语言之父丹尼斯·里奇(Dennis Ritchie)之外,2011年还有许多科技行业的梦想家和技术先驱先后辞世。计算机行业从1950年代开始发展,期间曾有众多卓越的人才为现代化计算、智能电子和互联网的发展奠定了基础。2
windows下异常处理 异常的分发和处理时在线程范围内进行的,异常处理器的注册也是相对线程而言的。Windows系统中的每个用户态线程都拥有一个线程环境块(Thread Environment Block),TEB结构的具体定义。TEB结构的起始处总有一个被称为线程信息块(Thread information Block)的结构,简称TIB。TIB的第一字段ExceptionList记录的就是用来登记结构化异常处理链表的