自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(189)
  • 资源 (11)
  • 收藏
  • 关注

转载 C语言字节对齐

文章最后本人做了一幅图,一看就明白了,这个问题网上讲的不少,但是都没有把问题说透。  一、概念       对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做自然对齐。比如在32位cpu下,假设一个整型变量的地址为0x00000004,那它就是自然对齐的。     二、为什么要字节对齐      需要字节对齐的根本原因在于CPU访问数

2013-03-27 14:11:34 863

原创 VC++中的GetWindowRect,GetClientRect,ScreenToClient , ClientToScreen();

在VC++中,关于窗口位置的调整,移动,拉伸时总少不了获取控件所在的位置坐标区域,所以 GetWindowRect,GetClientRect和ScreenToClient必不可少:   GetWindowRect()     得到的是在屏幕坐标系下的RECT(即以屏幕左上角为原点)。      GetClientRect()      得到的是在客户区坐标系下的RECT(即以所在

2012-11-10 23:08:23 6273

转载 Invalidate和UpdateWindow的区别

在编程的时候经常把UpdateData、Invalidate、InvalidateRect和UpdateWindow四个函数混淆,在这里将简单介绍它们的区别。UpdateData():    当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对话框中到底输

2012-11-10 00:10:52 1012

转载 清华梦的粉碎—写给清华大学的退学申请

清华梦的诞生 小时候,妈妈给我一个梦。她指着一个大哥哥的照片对我说,这是爸爸的学生,他考上了清华 大学,他是我们中学的骄傲。长大后,你也要进入清华大学读书,为我们家争光。我不知道清华是什么样子,但是我知道爱迪生和牛顿的故事。清华,大概就是可以 把我造就成他们这种人的地方吧。我幼小的脑海里就想象出我能在清华做的事情……我的脸上浮现出笑容。我说我要实现这个“清华梦”。这就是清华梦的诞生。小小科

2012-10-29 16:53:54 6465 1

原创 2010年10月10日网易笔试

第一部分(必做):计算机基础类(所有的选择题都是多项选择)1、假设进栈次序是e1, e2, e3, e4,那可能的出栈次序是()A、e2, e4, e3, e1B、e2, e3, e4, e1C、e3, e2, e4, e1D、e1, e2, e4, e32、表达式X=A+B*(C-D)/E的后缀表示形式可以是()A、XAB+CDE/-*=B、XA+BC-D

2012-10-16 21:47:06 3270

转载 求1000的阶乘结果尾部0的个数

该题目有多种方法来得到结果。方法一:直接求出结果并计算尾数0的个数该方法可以参考上一篇帖子(http://blog.csdn.net/yahohi/article/details/7528778),采用数组存储结果,然后计算尾数中0的个数。结果为249.方法二:计算可分解5的个数这种想法认为,1000! = 1000*999*...*1,而5*2= 10,故只要将所有的从1到100

2012-10-12 14:19:39 920

转载 TCP连接与关闭

TCP 是一个面向连接的协议,无论哪一方向另一方发送数据之前,都必须先在双方之间建立一条连接。本节将详细讨论一个TCP 连接是如何建立的以及通信结束后是如何终止的。建立一个 TCP 连接  TCP使用三次握手 ( three-way handshake ) 协议来建立连接,图 3-10 描述了三次握手的报文序列。这三次握手为:请求端(通常称为客户)发送一个 SYN 报文段( S

2012-10-12 10:19:05 840

转载 进程状态转换

进程的状态转换图1.就绪–>执行 2.执行–>就绪 3.执行–>等待  4.等待–>就绪一、进程的三种基本状态进程在运行中不断地改变其运行状态。通常,一个运行进程必须具有以下三种基本状态。就绪(Ready)状态当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪状态。执行(Running)状态当进程已获得处理机,其程序正在处

2012-10-12 10:14:05 3507

转载 段式和页式存储管理试题及答案(整理)

1、段式和页式存储管理的地址结构很类似,但是它们有实质上的不同,以下错误的是(D)      A.页式的逻辑地址是连续的,段式的逻辑地址可以不连续      B.页式的地址是一维的,段式的地址是二维的      C.分页是操作系统进行的,分段是用户确定的      D.页式采用静态重定位方式,段式采用动态重定位方式 2、在以下的存储管理方案中,能扩充主存容量的是(D)

2012-10-11 16:41:35 8297

转载 枚举类型

在实际应用中,有的变量只有几种可能取值。如人的性别只有两种可能取值,星期只有七种可能取值。在 C 语言中对这样取值比较特殊的变量可以定义为枚举类型。所谓枚举是指将变量的值一一列举出来,变量只限于列举出来的值的范围内取值。定义一个变量是枚举类型,可以先定义一个枚举类型名,然后再说明这个变量是该枚举类型。例如: enum weekday{sun,mon,tue,wed,thu,fri,

2012-10-09 21:13:58 2501

转载 阿里巴巴笔试题

1、有一个虚拟存储系统,若进程在内存中占3页(开始时内存为空),若采用先进先出(FIFO)页面淘汰算法,当执行如下访问页号序列后1,2,3,4,5,1,2,5,1,2,3,4,5,会发生多少缺页?A、7                       B、8                            C、9                           D、102、设有一个顺

2012-10-09 17:57:25 1282

原创 海量数据处理

1、有一千万条短信,有重复,以文本文件的形式保存,一行一条,有 重复。请用5分钟时间,找出重复出现最多的前10条。方法1:可以用哈希表的方法对1千万条分成若干组进行边扫描边建散列表。第一次扫描,取首字节,尾字节,中间随便两字节作为hash Code,插入到hash table中。并记录其地址和信息长度和重复次数,1千万条信息,记录者几个信息还放得下。同hash code且等长就是疑似相同,比较

2012-09-25 20:11:27 2322 1

原创 操作系统中的作业、进程、线程、管程各自的定义

作业:用户在一次解题或一个事务处理过程中要求计算机系统所做工作的集合。它包括用户程序、所需要的数据及控制命令等。作业时由一系列有序的步骤组成的。进程:一个程序在一个数据集合上的一次运行过程。所以一个程序在不同数据集合上运行,乃至一个程序在同样数据集合上的多次运行都是不同的进程。线程:线程是进程中的一个实体,是被系统独立调度和执行的基本单位。管程:管程实际上是定义了一个数据结构和在该数据

2012-09-25 16:22:24 4158

原创 非比较排序

计数排序、基数排序、桶排序 非比较排序算法,平均时间复杂度都是O(N).这些排序元素,因为其关键值本身就含有了定位特征,因而不需要比较就可以确定其前后位置。1、计数排序是一种简单的排序方法,将排序结果放到另一个的新的数组中。      计数排序要求 待排序的元素的关键值是位于0-k之间的正整数。因而是个非常特殊的情况。      输入数组A:元素关键值是 0-K的正整数,可以有重复

2012-09-21 18:55:31 2404

原创 虚析构函数

虚析构函数是为了解决这样的一个问题:基类的指针指向派生类对象,并用基类的指针删除派生类对象。  如果某个类不包含虚函数,那一般是表示它将不作为一个基类来使用。当一个类不准备作为基类使用时,使析构函数为虚一般是个坏主意。因为它会为类增加一个虚函数表,使得对象的体积翻倍,还有可能降低其可移植性。  所以基本的一条是:无故的声明虚析构函数和永远不去声明一样是错误的。实际上,很多人

2012-09-21 11:25:57 1042

转载 运算符重载函数作为类成员函数和友元函数

可以看到,重载函数operator+访问了两个对象中的成员,一个是this指针指向的对象中的成员,一个是形参对象中的成员。如this->real+c2.real,this->real就是c1.real。上节中已说明,在将运算符函数重载为成员函数后,如果出现含该运算符的表达式,如c1+c2,编译系统把它解释为   c1.operator+(c2)即通过对象c1调用运算符重载函数,并以表达式中

2012-09-21 09:28:57 21491

转载 C++虚函数机制解析

C++的虚函数(Virtual Function)是通过一张虚函数表(Virtual Table)来实现的。简称为V-Table。 在这个表中,主是要一个类的虚函数的地址表,这张表解决了继承、覆盖的问题,保证其容真实反应实际的函数。这样,在有虚函数的类的实例中这个表被分配在了这个实例的内存中,所以,当我们用父类的指针来操作一个子类的时候,这张虚函数表就显得由为重要了,它就像一个地图一样,指明了实际

2012-09-20 11:57:08 901

原创 再谈typedef

示例:下列用法错误的是:typedef INT int;typedef unsigned char byte;typedef char str40[41];typedef long float double答案:AD 用法说明:1、 为现有数据类型定义同义词 typedef使用最多的地方是创建易于记忆的类型名,用它来归档程序员的意图。例如:t

2012-09-19 21:25:40 643

转载 人生至高境界

1、人之所以痛苦,在于追求错误的东西。2、与其说是别人让你痛苦,不如说自己的修养不够。3、如果你不给自己烦恼,别人也永远不可能给你烦恼。因为你自己的内心,你放不下。4、不宽恕众生,不原谅众生,是苦了你自己。 5、福报不够的人,就会常常听到是非;福报够的人,从来就没听到过是非。 6、你永远要感谢给你逆境的众生。7、不要浪费你的生命,在你一定会后悔的地方上。8、每一种创伤,

2012-09-19 12:21:59 624

原创 数组做参数退化为指针

void Upper(char str[100]){ for(size_t i=0;i {  if('a'   str[i]-=('a'-'A'); }}int main(){   char str[]="aBcDettyy";   cout   Upper(str);   cout   return 0;}输出结果:ABCDEtty

2012-09-19 12:06:31 643

原创 指针与数组区别

下面两段程序的输出结果1.  char *buf1="hello";  char *buf2="hello";  if(buf1==buf2)    cout  else    cout2.  char buf1[10]="hello";   char buf2[10]="hello";   if(buf1==buf2)    cout   el

2012-09-19 11:44:06 475

原创 STL list为双向循环链表

示例证明:#include#includeusing namespace std;typedef list li;typedef li::iterator it;int main(){    li one;    one.push_back(1);    one.push_back(2);    one.push_back(3);    int i=

2012-09-19 11:38:05 546

转载 C++变量命名规范

我们创建了一个箱子,用它的时候总应该用一样东西来表示它,那就是变量名。变量名的意义就如同给文件夹起个名字,或者给文件起个名字。不过,其名字也是要讲规则的。具体规则如下:不能是可能与C++中语句混淆的单词。(这种单词称为保留字,具体哪些是C++的保留字可以查阅书后的附录。凡是在输入代码时,自动变成蓝色的单词,一定是保留字。)如果我们创建一个名为int的变量,那么这个int到底是一个变量名还是

2012-09-19 11:20:34 1152

原创 数组与指针例题

#includeusing namespace std;int main(){    int p[3][4][5]; int *q=(int *)p; int (*s)[5]=&p[1][0]; int i; for(i=0;i  q[i]=i; cout return 0;}输出结果:1568

2012-09-18 23:57:22 556

原创 a++

问题:int  (*a)[10];a++;cout解析:本题定义一个指针指向一个含有10个int元素的数组。a++表明a指针向后移动1*sizeof(数组大小),可编程测试如下:#includeusing namespace std;int main(){    int v[2][10]={{1,2,3,4,5,6,7,8,9,10},{11,12,13,14,

2012-09-18 23:26:38 1003

原创 C++ Virtual详解

Virtual是C++ OO机制中很重要的一个关键字。只要是学过C++的人都知道在类Base中加了Virtual关键字的函数就是虚拟函数(例如函数print),于是在Base的派生类Derived中就可以通过重写虚拟函数来实现对基类虚拟函数的覆盖。当基类Base的指针point指向派生类Derived的对象时,对point的print函数的调用实际上是调用了Derived的print函数而不是Ba

2012-09-18 22:42:36 528

原创 SQL注入式攻击

所谓SQL注入式攻击,就是攻击者把SQL命令插入到Web表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令。在某些表单中,用户输入的内容直接用来构造(或者影响)动态SQL命令,或作为存储过程的输入参数,这类表单特别容易受到SQL注入式攻击。常见的SQL注入式攻击过程类如:  ⑴ 某个ASP.NET Web应用有一个登录页面,这个登录页面控制着用户是否有权访问应用,它要求

2012-09-16 22:17:55 720

原创 数据库范式

1NF:第一范式。如果关系模式R的所有属性的值域中每一个值都是不可再分解的值,则称R属于第一范式模式。如果某个数据库模式都是第一范式的,则称该数据库模式属于第一范式的数据库模式。2NF:第二范式。如果关系模式R为第一范式,并且R中每一个非主属性完全函数依赖于R的某个候选键,则称R为第二范式模式。3NF:第三范式。如果关系模式R是第二范式,且每个非主属性都不传递依赖于R的候选键,则称R是第三

2012-09-16 22:02:49 793

原创 Cache组织方式

计算机系统结构中,将主存与Cache的映像分成三种方式,直接映像,全相联映像,组相联映像。所谓映像就是将内存地址与Cache地址间的相互转换,我们知道Cache的容量相对于主存来说很小,为了能将两者有效的对应该起来,便产生了上面提到的映像方式。 1.直接映像主存与Cache的划分:将主存根据Cache的大小分成若干分区,Cache也分成若干个相等的块,主存的每个分区也分成与Ca

2012-09-16 17:06:31 3449

原创 再说static

static关键字是C,   C++中都存在的关键字,   它主要有三种使用方式,   其中前两种只指在C语言中使用,   第三种在C++中使用(C,C++中具体细微操作不尽相同,   本文以C++为准).(1)局部静态变量 (2)外部静态变量/函数 (3)静态数据成员/成员函数 下面就这三种使用方式及注意事项分别说明 一、局部静态变量 在C/C++中,   局部变

2012-09-16 16:21:32 524

原创 递归求组合

#includeusing namespace std;char num[]="abcdefghi";char rcd[26];void full_combination(int l,int p){  int i;  for( i=0;i {    printf("%c",rcd[i]);  }  printf("\n");  for(i=p;i

2012-09-16 10:38:38 466

转载 死锁的产生、条件、和解锁

所谓死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去.此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等竺的进程称为死锁进程.  由于资源占用是互斥的,当某个进程提出申请资源后,使得有关进程在无外力协助下,永远分配不到必需的资源而无法继续运行,这就产生了一种特殊现象死锁。  一种情形,此时执行程序中两个

2012-09-15 19:18:37 924

转载 typedef与define

1. 基本解释  typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。  在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。  至于typedef有什么微妙之处,请你接着看下面对几个问题的具体阐述。2. typ

2012-09-15 18:51:26 407

转载 malloc(0)

最近,看了有关malloc(0)的返回值以及其他一些问题的讨论,我把自己的感受和看法记录如下:问题:char* ptr = malloc(0*sizeof(char));if(NULL == ptr)      printf("got a NULL pointer");else     printf("got a Valid pointer");请问:上面的程序输出为什么?

2012-09-15 17:07:00 997

原创 电路交换与分组交换的优缺点

(一)电路交换:由于电路交换在通信之前要在通信双方之间建立一条被被双方独占的物理通路(有通信双方之间的交换设备和链路逐段连接而成),因而有以下优缺点。优点:1.由于通信线路为通信双方用户专用,数据直达,所以传输数据的时延非常小。2.通信双方之间的物理通路一旦建立,双方可以随时通信,实时性强。3.双方通信时按发送顺序传送数据,不存在失序问题。4.电路交换既适用于传输模拟信号,也适

2012-09-15 09:57:54 28945 2

转载 创新工厂面试题详解:共打了多少鱼

abcde五人打渔,打完睡觉,a先醒来,扔掉1条鱼,把剩下的分成5分,拿一份走了;b再醒来,也扔掉1条,把剩下的分成5份,拿一份走了;然后cde都按上面的方法取鱼。问他们一共打了多少条鱼,写程序和算法共打了多少条鱼的结果有很多。但求最少打的鱼的结果是3121条鱼(应该找这5个人问问,用什么工具打了这么多条鱼) 大家可以先用计算器验证一下3121是否正确。 a开始拿鱼:

2012-09-14 22:46:25 841

转载 对volatile修饰符的理解和使用

1. 什么是volatile修饰符?volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如:操作系统、硬件或者其他线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。2. 一个简单的例子volatile 影响编译器编译的结果。volatile变量是随时可能发生变化的,与volatile变

2012-09-13 19:13:25 649

转载 微软2012暑期实习笔试题(附答案)

1. Suppose that a Selection Sort of 80 items has completed 32 iterations of the main loop. How many items are now guaranteed to be in their final spot (never to be moved again)?对80个数进行选择排序,执行32个循环后,

2012-09-13 15:17:01 794

原创 几道典型面试题

1. 请描述const和#define相比,有何优点?答:#define定义的其实是一个常数的名字,就是说你可以把这个名字等价于常数使用,在编译时会被编译器替换为该常数。之所以这么做,仅仅是为了提高可读性,但是安全性不能得到保证。出于安全性的考虑,C++引入了const定义。当然这仅仅是const的功能之一。使用const,你可以定义一个不能修改其值的变量,也就是可以作为一个常量来使用了。当然

2012-09-13 15:09:36 651

原创 用两个栈实现队列

#includeusing namespace std;template class Stack{  public:   Stack();   int isEmpty();   void push(const T& node);   T pop();  private:   T * top;   T * base;};template Stac

2012-09-12 11:49:12 351

VC 仿QQ即时通信程序

VC 仿QQ即时通信程序 很不错,可以作为毕业设计

2012-04-23

VC 获取文件属性

VC 获取文件属性

2012-04-23

VC 实现调用系统关机窗口界面

VC 实现调用系统关机窗口界面 VC 实现调用系统关机窗口界面

2012-04-23

VC++ 实现简单的文件加密与解密功能

VC++ 实现简单的文件加密与解密功能 很实用,可以参考参考。

2012-04-23

DSP课件 DSP课件 DSP课件

DSP课件DSP课件DSP课件DSP课件DSP课件DSP课件

2010-04-21

远程桌面监控 很不错的程序

远程桌面监控 远程桌面监控 很不错的程序

2010-04-21

汇编语言模拟试题(非常不错)

非常不错的模拟题非常不错的模拟题非常不错的模拟题

2010-04-15

第8章 80C51单片微机的系统扩展原理与接口技术

第8章 8第8章 80C51单片微机的系统扩展原理与接口技术0C51单片微机的系统扩展原理与接口技术

2010-01-21

操作系统\课程设计\银行家算法选定版本加注释

操作系统\课程设计\银行家算法选定版本加注释 操作系统\课程设计\银行家算法选定版本加注释

2010-01-21

服务器架设\子网划分.

服务器架设\子网划分.服务器架设\子网划分.

2010-01-21

DNS服务器配置DNS服务器配置

DNS服务器配置DNS服务器配置DNS服务器配置DNS服务器配置

2010-01-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除