自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Neo的专栏

Stay Hungry,Stay Foolish

  • 博客(25)
  • 资源 (8)
  • 收藏
  • 关注

转载 逻辑地址到物理地址的转换过程

CPU将一个虚拟内存空间中的地址转换为物理地址,需要进行两步:首先将给定一个逻辑地址(其实是段内偏移量,这个一定要理解!!!),CPU要利用其段式内存管理单元,先将为个逻辑地址转换成一个线程地址,再利用其页式内存管理单元,转换为最终物理地址。物理地址(physical address)用于内存芯片级的单元寻址,与处理器和CPU连接的地址总线相对应。——这个概念应该是这几个概念中最好

2012-08-31 11:34:13 4196

转载 面向对象的三个基本特征(讲解)

面向对象的三个基本特征(讲解)面向对象的三个基本特征是:封装、继承、多态。封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能

2012-08-30 18:12:04 619

转载 结构体内存分配问题(转)

1)sizeof也可以对一个函数调用求值,其结果是函数返回类型的大小,函数并不会被调用。(2)终于搞懂struct结构体内存分配问题了,结构体中各个成员字节对齐遵循以下几个原则:1.结构体每个成员相对于结构体首地址的偏移量(offset)都是(这个)成员大小的整数倍,如有需要编译器会在成员之间加上填充字节(internal adding); 例如有以下一个结构体 struct ex { int i

2012-08-27 23:56:25 711

转载 常见排序算法的稳定性分析和结论

常见排序算法的稳定性分析和结论 这几天笔试了好几次了,连续碰到一个关于常见排序算法稳定性判别的问题,往往还是多选,对于我以及和我一样拿不准的同学可不是一个能轻易下结论的题目,当然如果你笔试之前已经记住了数据结构书上哪些是稳定的,哪些不是稳定的,做起来应该可以轻松搞定。本文是针对老是记不住这个或者想真正明白到底为什么是稳定或者不稳定的人准备的。      首先,排序算法的稳定

2012-08-27 17:22:10 773

转载 排序 实现-插入-选择-快排

1.插入排序:思想:把一个数列分成排序后的和没排序的两部分,把没排序的数一个一个插入到排序后的数列中,首先当第一个数为排序后的数,之后把第二个数插入到第一个数组成的数列中,以此类推到结束。时间复杂度(O(n^2))void InsertSort( int nArray[], int nLen ){ int nTemp =0; int i = 0; int j = 0; for( ...

2012-08-27 12:23:24 677

转载 网络资料总结的常用计算机公司笔试题目

补码:正数的补码与原码相同;负数的补码符号位为1,其余位为该数绝对值的原码按位取反,然后整个数加1。 路由器的功能:网络层互联设备。很强的网络互联能力,能够互联多个异构网络;很强的路由选择;分组过滤和流量管理;数据压缩、加密和容错。 DNS原理:DNS服务,或者叫域名服务、域名解析服务,就是提供域名与IP地址的相互转换。域名的正向解析是将主机名转换成IP地址的过程

2012-08-26 23:42:19 2018

转载 const用法

优点:const常量有数据类型,而宏常量没有数据类型。编译器可以对前者进行类型安全检查,而对后者只进行字符替换,没有类型安全检查,并且在字符替换时可能会产生意料不到的错误(边际效应)const主要是为了程序的健壮型,减少程序出错.最基本的用法:const int a=100; b的内容不变,b只能是100也就是声明一个int类型的常量(#define b =100)int co

2012-08-21 17:32:59 551

转载 朗讯的笔试题 union struct

朗讯的笔试题是这样的:Typedef union student{       Char name[10];       Long sno;       Char sex;       Float score [4];} STU;Main (){STU a[5];Printf(“%d/n”,sizeof(a);}答案是80 ,因为union是可变

2012-08-20 12:49:04 731

转载 C/C++笔试系列--从一道IBM的笔试题看编码规范

从一道IBM的笔试题看编码规范 char* fun1() { coutchar* fun2() { coutchar* fun3() { cout int main(int argc, char* argv[]){        cout        return 0;}屏幕输出是多少?cbam111为什么不是abcm111呢?或者是ma1b1

2012-08-19 17:31:10 2124 1

转载 c语言文件读写方式

文件使用方式 意义 “rt” 只读打开一个文本文件,只允许读数据 “wt” 只写打开或建立一个文本文件,只允许写数据 “at” 追加打开一个文本文件,并在文件末尾写数据 “rb” 只读打开一个二进制文件,只允许读数据 “wb” 只写打开或建立一个二进制文件,只允许写数据 “ab” 追加打开一个二进制文件,并在文件末尾写数据 “rt+” 读

2012-08-11 19:04:42 4759 2

原创 拷贝构造函数和赋值构造函数的异同

由于并非所有的对象都会使用拷贝构造函数和赋值函数,程序员可能对这两个函数  有些轻视。请先记住以下的警告,在阅读正文时就会多心:  ?? 如果不主动编写拷贝构造函数和赋值函数,编译器将以“位拷贝”  的方式自动生成缺省的函数。倘若类中含有指针变量,那么这两个缺省的函数就隐  含了错误。以类String 的两个对象a,b 为例,假设a.m_data 的内容为“hello”,  b

2012-08-10 22:08:35 590

转载 出现频率最高的笔试题strcpy写法

题目:     已知strcpy函数的原型是:         char * strcpy(char * strDest,const char * strSrc);     1.不调用库函数,实现strcpy函数。     2.解释为什么要返回char *。     解说:     1.strcpy的实现代码         char * strcpy(char *

2012-08-10 16:37:44 701

转载 写出float x 与“零值”比较的if语句——一道面试题分析

写出float  x 与“零值”比较的if语句请写出 float  x 与“零值”比较的 if 语句: const float EPSINON = 0.00001; if ((x >= - EPSINON) && (x  不可将浮点变量用“==”或“!=”与数字比较,应该设法转化成“>=”或“EPSINON应该是一个很小的值吧   因为计算机在处理浮点数的时候是有误差的

2012-08-07 15:45:32 832

转载 堆栈溢出

为了了解堆栈溢出,首先让我们研究一下堆栈的工作机制。堆栈的作用就好比短期内存——它存储计算机处理特定函数时所需的信息。当调用一个函数时,程序首先将调用函数所必需的的各种参数放入堆栈中。计算机处理器使用一种能够特殊的处理器寄存器——可扩展寄存器指针(Extented Stack Point,ESP)——来跟踪堆栈的当前位置。这一步骤如图 1-1 所示。图中,函数的参数已经被压入堆栈。请注意,这个

2012-08-07 15:36:18 1315

转载 全局变量和局部变量在内存里的区别

预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表。3、全局区(静态区)(static)—,全局

2012-08-07 15:21:03 25972

转载 C/C++返回内部静态成员的陷阱

C/C++返回内部静态成员的陷阱陈皓背景在我们用C/C++开发的过程中,总是有一个问题会给我们带来苦恼。这个问题就是函数内和函数外代码需要通过一块内存来交互(比如,函数返回字符串),这个问题困扰和很多开发人员。如果你的内存是在函数内栈上分配的,那么这个内存会随着函数的返回而被弹栈释放,所以,你一定要返回一块函数外部还有效的内存。这是一个让无数人困扰的问题。如果你

2012-08-07 15:13:04 653

原创 VS异常问题——Solution

一、没有找到MSVCR80.DLL //出现的现象是在debug的时候出现了"没有找到MSVCR80.dll "的对话框;但是在Release中没有报错!在stdafx.h 文件中添加以下代码#pragma comment(linker, "\"/manifestdependency:type='Win32' name='Microsoft.VC80.CRT' vers

2012-08-07 13:06:54 1007

转载 关于常量折叠(转)

首先来看一个例子:int main(int argc, char* argv[]){const int i=0;int *j = (int *) &i;*j=1;coutcoutcoutreturn 0;}结果是0012ff7c0012ff7c01因为i和j都指向相同的内存地址,所以输出的前两个结果是相同的,但

2012-08-07 11:23:10 549

转载 函数的引用返回

引用是给变量取一个别名,所以引用传递会直接进行变量本身的传递。它的最大好处是可以把别处对变量的改变保留下来,第二好处是它提高了性能:如果函数的返回值是一个引用,那么,如上文所说,它会节约一组构造、赋值和析构过程。但是,函数返回引用往往会带来一些意想不到的错误:比如返回临时变量的引用。  //一个错误的函数  int &Max(int i, int j)  {    return i

2012-08-03 11:27:17 6152 1

原创 sprintf

字串格式化命令,主要功能是把格式化的数据写入某个字符串中。sprintf 是个变参函数,使用时经常出问题,而且只要出问题通常就是能导致程序崩溃的内存访问错误,但好在由sprintf 误用导致的问题虽然严重,却很容易找出,无非就是那么几种情况,通常用眼睛再把出错的代码多看几眼就看出来了。在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。由于sprintf 跟pr

2012-08-03 10:58:09 586

转载 std::string

本文主要针对那些有C语言背景知识,而现在开始使用C++语言编程的程序员。事实上,C++继承了大多数C语言的功能,但有些方面还是不得不要留意的,如new和delete取代了malloc和free,且C++还使用了STL容器类来静态或动态地分配数组。本文中要讲的是用std::string来取代char*,将会演示C风格数组带来的一系列问题,及如何使用std::string来避免这些问题。避

2012-08-03 10:41:43 1410

原创 extern 与 static的用法与区别

1.extern的用法:extern可以声明其他文件内定义的变量。在一个程序里,一个对象只能定义一次,它可以有多个声明,但类型必须完全一样。如果定义在全局作用域或者名字空间作用域里某一个变量没有初始化,它会被按照默认方式初始化。将变量或函数声明成外部链接,即该变量或函数名在其它函数中可见。被其修饰的变量(外部变量)是静态分配空间的,即程序开始时分配,结束时释放。

2012-08-03 10:19:34 994

转载 MFC之对话框(二)

对话框经常被使用,因为对话框可以从模板创建,而对话框模板是可以使用资源编辑器方便地进行编辑的。一,模式与非模式对话框1.模式对话框    一个模式对话框是一个有系统菜单、标题栏、边线等的弹出式窗口。在创建对话框时指定WS_POPUP, WS_SYSMENU, WS_CAPTION和 DS_MODALFRAME风格。即使没有指定WS_VISIBLE风格,模式对话框也会被显示。

2012-08-03 09:05:46 1887 1

转载 MFC 对话框

1、对话框基本要点和生命周期MFC对话框支持“所见即所得”编程模式。其类型分为模式对话框和非模式对话框。对话框由一个rc资源文件描述外观,通过ID与一个CPP类相连接,对话框内的控件使用基于ID的变量映射通讯。模式对话框对象被定义后,通过调用DoModal()函数来显示对话框并进行相关操作,此函数当对话框被关闭时返回。其返回值标明了对话框是点“确定”退 出,还是“取消”。非模式对话框需

2012-08-03 08:58:09 1978

转载 CListCtrl使用技巧

以下未经说明,listctrl默认view 风格为report --------------------------------------------------------------------------------1. CListCtrl 风格      LVS_ICON: 为每个item显示大图标      LVS_SMALLICON: 为每个item显

2012-08-01 17:09:31 1005

黑客与画家

黑客 画家 pdf 讲述黑客与画家的异同点,观点新颖,很有独到见解,适合扩充知识

2013-05-11

solymr小品文系列

solymr小品文系列 C++ 技术小品文 目前主攻方向:C/C++ 、面向对象、泛型编程

2013-04-19

IDL精髓.pdf

IDL精髓.pdf COM idl C++

2013-04-14

COM技术内幕

COM技术内幕 pdf 好书 C++ 微软组件对象模型

2013-04-10

VC++之MFC类库中文手册.chm

VC++ MFC chm 中文版 继承类图

2013-01-11

画出时钟的时针和分针

输入当前时间,画出模拟时钟的时针和分针 C++ VS2005 MFC

2012-09-11

全角半角 转换器

全角 半角 转换器 C C++ 无需安装 小巧易用

2012-03-10

自动关闭计算机小工具

C C++ MFC 简单实用 小巧 自动关机 定时

2012-03-05

空空如也

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

TA关注的人

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