随笔分类 - 面试
摘要:du和df命令都被用于获得文件系统大小的信息:df用于报告文件系统的总块数及剩余块数,du -s /用于报告文件系统使用的块数。但是,我们可以发现从df命令算出的文件系统使用块数的值与通过du命令得出的值是不一致的。如下例:# du -s /tmp 返回如下值:---12920 /tmp而 df /...
阅读全文
摘要:auto_ptr是当前C++标准库中提供的一种智能指针,或许相对于boost库提供的一系列眼花缭乱的智能指针, 或许相对于Loki中那个无所不包的智能指针,这个不怎么智能的智能指针难免会黯然失色。诚然,auto_ptr有这样那样的不如人意,以至于程序员必须像使用”裸“指针那样非常小心的使用它才能...
阅读全文
摘要:悬垂指针:1:提出的原因:请看下面的代码片段:int *p=NULL;void main(){ int i=10;p=&i; cout #include #include #include using namespace std;int main(void) { ch...
阅读全文
摘要:1用一个函数判断一棵树是否平衡题目:实现一个函数检查一棵树是否平衡。对于这个问题而言, 平衡指的是这棵树任意两个叶子结点到根结点的距离之差不大于1。注意,对于这道题,要审清题意。它并不是让你判断一棵树是否为平衡二叉树。平衡二叉树的定义为:它是一棵空树或它的左右两个子树的高度差的绝对值不超过1, 并且...
阅读全文
摘要:http://blog.csdn.net/jinhuiyu/article/details/4487058
阅读全文
摘要:http://www.wendangku.net/doc/25de4061be1e650e52ea99f8-15.html
阅读全文
摘要:grep、sed和awk都是文本处理工具,虽然都是文本处理工具单却都有各自的优缺点,一种文本处理命令是不能被另一个完全替换的,否则也不会出现三个文本处理命令了。只不过,相比较而言,sed和awk功能更强大而已,且已独立成一种语言来介绍。grep:文本过滤器,如果仅仅是过滤文本,可使用grep,其效率...
阅读全文
摘要:转载:http://www.cnblogs.com/Anker/p/3269106.html1、前言 最近在学习linux内核方面的知识,经常会看到用户空间与内核空间及进程上下文与中断上下文。看着很熟悉,半天又说不出到底是怎么回事,有什么区别。看书过程经常被感觉欺骗,似懂非懂的感觉,很是不爽,今天...
阅读全文
摘要:今天内推腾讯实习生一面其中问道一个问题是,怎样在不消除递归的情况下防止栈溢出?(无论如何都要使用递归)面试的时候,一点都不知道,只能说使用循环来消除,但是那样不满足要求,后来看看这篇博客http://blog.zhaojie.me/2009/03/tail-recursion-and-continu...
阅读全文
摘要:一 内存泄漏1 C++内存泄漏在C程序中使用malloc()分配内存,使用free()来释放内存,当未释放不再使用的内存时就会出现“内存泄漏”在C++程序中使用new()分配内存,使用delete()释放内存,当未释放不再使用的内存时就会出现“内存泄漏”2 避免内存泄漏每次调用malloc分配内存时...
阅读全文
摘要:1 structure和class的区别?structure和class的唯一区别就是默认的访问控制不同,structure默认是public,class默认是Private;structure也可以有构造函数、析构函数、成员函数等。2 继承体系中为什么将析构函数声明为虚函数?当你可能通过基类指针删...
阅读全文
摘要:递归是程序设计中的一种算法。一个过程或函数直接调用自己本身或通过其他的过程或函数调用语句间接地调用自己的过程或函数,称为递归过程或函数。例子一:打靶面试1:一个射击运动员打靶,靶一共有10环,连开10枪打中90环的可能性有多少种?解析:靶上一共有10种可能——1环到10环,还有可能脱靶,那就是0环,...
阅读全文
摘要:编程中有一种很难发现的错误是迷途指针。迷途指针也叫悬浮指针、失控指针,是党对一个指针进行delete操作后——这样会释放它所指向的内存——并没有把它设置为空时产生的。而后,如果你没有重新赋值就试图再次使用该指针,引起的结果是不可预料的。空指针和迷途指针的区别?当delete一个指针的时候,实际上仅是...
阅读全文
摘要:要修改变量的值,需要使用变量类型的指针作为参数或者变量的引用。如果变量是一般类型的变量,例如int,则需要使用int 类型的指针类型int *作为参数或者int的引用类型int&。但是如果变量类型是指针类型,例如char*,那么需要使用该类型的指针,即指向指针的指针类型 char* *,或者该类型的...
阅读全文
摘要:类的this指针有以下特点:(1)this只能在成员函数中使用全局函数,静态函数都不能使用this。实际上,成员函数默认第一个参数为T* const this。如:class A { public: int func(int p) { } };其中,func的原型在编译器看来应该是:int func...
阅读全文
摘要:例子一:/**根据以下条件进行计算:*1、 结构体的大小等于结构体内最大成员大小的整数倍*2、 结构体内的成员的首地址相对于结构体首地址的偏移量是其类型大小的整数倍,比如说double型成员相对于结构体的首地址的地址*偏移量应该是8的倍数。*/#include#includeusing name...
阅读全文
摘要:有两个变量a和b,不使用任何中间变量交换a和b。方法一:采用如下方法:a=a+b;b=a-b;a=a-b;这样做的缺点就是如果a、b都是比较大的数,则a=a+b时就会越界。而采用:a=a^b;b=a^b;a=a^b;无需担心越界的问题,这样就比较好 注意不能相等。
阅读全文
摘要:21 22 23 24 ...20 7 8 9 1019 6 1 2 1118 5 4 3 1217 16 15 14 13 看清以上数字的排列规律,设1点的坐标是(0,0),x方向向右为正,y方向向下为正。例如,7的坐标为(-1,-1)...
阅读全文
摘要:1 x=x+1,x+=1,x++,哪个效率最高?为什么?解析:x=x+1最低,因为它的执行过程如下:1)读取右x的地址。2)x+13)读取左x的地址4)将右值传给左边的x(编译器并不左右x的地址相同)。x+=1其次,其执行过程如下:1)读取右x的地址2)x+13)将得到的值传给x(因为x的地址已经读...
阅读全文
摘要:1 类型转换当执行算术运算时,操作数的类型如果不同,就会发生转换,数据类型一般朝着浮点精度高、长度更长的方向转换,整数型如果转换为signed不会丢失信息,就转换为signed,否则转换为unsigned。K&R C所采用无房户后保留原著,就是当一个无符号类型与int或更小的整型混合使用时,结果类型...
阅读全文

浙公网安备 33010602011771号