上一页 1 ··· 36 37 38 39 40 41 42 43 44 ··· 58 下一页
  2013年4月26日
摘要: memcpy()和memmove()都是C语言中的库函数,在头文件string.h中,其原型分别如下:void *memcpy(void *dst, const void *src, size_t count);void *memmove(void *dst, const void *src, size_t count);它们都是从src所指向的内存中复制count个字节到dst所指内存中,并返回dst的值。当源内存区域和目标内存区域无交叉时,两者的结果是一样的,但如果有交叉呢?先看下图:图的上半部分为源内存区域在目标内存区域右边,下半部分为源内存区域在目标区域左边,源内存区域和目标内存区域都 阅读全文
posted @ 2013-04-26 20:52 猿人谷 阅读(676) 评论(0) 推荐(0) 编辑
摘要: 来源:http://www.cnblogs.com/qlee/archive/2011/09/16/2178873.html1、有一个整数数组,请求出两两之差绝对值最小的值,记住,只要得出最小值即可,不需要求出是哪两个数。View Code 1 using System; 2 using System.Linq; 3 using System.Collections.Generic; 4 namespace ConsoleApplication1 5 { 6 class Program 7 { 8 static Random Rand =new Random(); ... 阅读全文
posted @ 2013-04-26 20:21 猿人谷 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 1、高位地址:栈(存放着局部变量和函数参数等数据),向下生长 (可读可写可执行)2、 堆(给动态分配内存是使用),向上生长 (可读可写可执行)3、 数据段(保存全局数据和静态数据) (可读可写不可执行)4、地位地址:代码段(保存代码) (可读可执行不可写)代码段就是存储程序文本的,所以有时候也叫做文本段,指令指针中的指令就是从这里取得。这个段一般是可以被共享的,比如你在Linux开了2个Vi来编辑文本,那么一般来说这两个Vi是共享一个代码段的,但是数据段不同(这点有点类似C++中类的不同对象共享相同成员函数)。 数据段是存储数据用的,还可以分成初始化为非零的数据区,BSS,和堆(Heap)三个 阅读全文
posted @ 2013-04-26 20:16 猿人谷 阅读(894) 评论(0) 推荐(0) 编辑
摘要: 成员函数的重载、覆盖与隐藏成员函数的重载、覆盖(override)与隐藏很容易混淆,C++程序员必须要搞清楚概念,否则错误将防不胜防。8.2.1 重载与覆盖成员函数被重载的特征:(1)相同的范围(在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。覆盖是指派生类函数覆盖基类函数,特征是:(1)不同的范围(分别位于派生类与基类);(2)函数名字相同;(3)参数相同;(4)基类函数必须有virtual 关键字。示例8-2-1 中,函数Base::f(int)与Base::f(float)相互重载,而Base::g(void)被Derived::g(void)覆 阅读全文
posted @ 2013-04-26 20:07 猿人谷 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 基本概念: 1.OOP中唯一关心的是对象的接口是什么,就像计算机的销售商她不管电源内部结构 是怎样的,他只关系能否给你提供电就行了,也就是只要知道can or not而不是how and why。所有的程序是由一定的属性和行为对象组成的,不同的对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过对封装对象数据,很大 限度上提高复用率。2.OOP中最重要的思想是类,类是模板是蓝图,从类中构造一个对象,即创建了这个类的一个实例(instance)。 3.封装:就是把数据和行为结合起在一个包中)并对对象使用者隐藏数据的实现过程,一个对象中的数据叫他的实例字段(instance fie 阅读全文
posted @ 2013-04-26 17:24 猿人谷 阅读(210) 评论(0) 推荐(0) 编辑
  2013年4月25日
摘要: 有趣的Linux命令行功效1. Linux"sl"命令行尽管"sl"代表了"蒸汽机机头",但它是用来提醒那些命令行控们别把"ls"打成了"sl"。让我们看看在系统中运行这个命令的时候会怎样。首先,我们安装的时候,要将其设置为不与标准Linux一起出现。用"apt-get"可以很方便地完成安装。sudo apt-get install sl大部分的安装需要sudo特权。完成安装后,在命令提示行中输入"sl"。$sl我们看到了动画蒸汽机机头从屏幕右边开往左边。 阅读全文
posted @ 2013-04-25 16:44 猿人谷 阅读(1000) 评论(0) 推荐(0) 编辑
摘要: 话说,有这样一道据说是月薪2W的笔试题:#include "stdio.h"void print(){*}void main(){}要求在*部分写代码使整个程序运行后输出“hello world”,有些人说,这还不简单啊,于是写出这样的代码:view sourceprint?01.#include "stdio.h" 02.void print() 03.{ 04.printf("hello world"); 05.} 06.void main() 07.{ 08.print(); 09.}这样写的确是没问题,但是违背了题目的要求,因 阅读全文
posted @ 2013-04-25 14:50 猿人谷 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 来源:http://www.cnblogs.com/lzjsky/archive/2011/01/18/1938507.html2. 什么是“引用”?申明和使用“引用”要注意哪些问题? 答:引用就是某个目标变量的“别名”(alias),对引用的操作与对变量直接操作效果完全相同。申明一个引用的时候,切记要对其进行初始化。引用声明完 毕后,相当于目标变量名有两个名称,即该目标原名称和引用名,不能再把该引用名作为其他变量名的别名。声明一个引用,不是新定义了一个变量,它只表示该引 用名是目标变量名的一个别名,它本身不是一种数据类型,因此引用本身不占存储单元,系统也不给引用分配存储单元。不能建立数组的引 阅读全文
posted @ 2013-04-25 14:43 猿人谷 阅读(682) 评论(0) 推荐(0) 编辑
  2013年4月19日
摘要: 析构函数如果一个类想被别人继承,通常析构函数要声明为虚函数,否则,如下代码就会出现未定义情况。Base* p=new Derived();delete p;这句话反过来说,就是如果你不打算让别人派生你的类,就不要把析构函数声明为虚函数,当然对方是菜鸟的话,你也没办法。极端特殊情况下,只要使用者保证不会多态的析构(像上面的例子),也可以通融。继承与访问权限基类的private成员,只能由基类或者基类的友元访问,也就是说既不能被类外部的调用者(客户)访问,也不能被子类访问。或许是提供一种相对宽松的选择,protected成员允许派生类访问,但是拒绝外部调 用者的访问。<<C++Prim 阅读全文
posted @ 2013-04-19 16:29 猿人谷 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 来源:http://www.cnblogs.com/dongzhiquan/archive/2012/07/12/2588906.html在每个进程退出的时候,内核释放该进程所有的资源,包括打开的文件,占用的内存等.但是仍然为其保留一定的信息(包括进程号the process ID,退出状态the termination status of the process,运行时间the amount of CPU time taken by the process等),直到父进程通过wait / waitpid来取时才释放,此时该进程便成为僵尸进程。1.什么是僵尸进程? UNIX 系统中,一个进程结 阅读全文
posted @ 2013-04-19 16:18 猿人谷 阅读(4171) 评论(0) 推荐(1) 编辑
上一页 1 ··· 36 37 38 39 40 41 42 43 44 ··· 58 下一页