摘要: 考查对基本功的掌握:(1)字符串以'/0'结尾;(2)对数组越界把握的敏感度;(3)库函数strcpy的工作方式,如果编写一个标准strcpy函数的总分值为10,下面给出几个不同得分的答案:2分void strcpy( char *strDest, char *strSrc ){ while( (*strDest++ = * strSrc++) != '/0' );}4分void strcpy( char *strDest, const char *strSrc )//将源字符串加const,表明其为输入参数,加2分{ while( (*strDest++ = 阅读全文
posted @ 2013-10-07 21:18 小薇林 阅读(342) 评论(1) 推荐(0) 编辑
摘要: 一个类中将所有的成员函数都尽可能地设置为虚函数总是有益的。设置虚函数须注意:1:只有类的成员函数才能说明为虚函数;2:静态成员函数不能是虚函数;3:内联函数不能为虚函数;4:构造函数不能是虚函数;5:析构函数可以是虚函数,而且通常声明为虚函数。类里面“定义”的成员函数是内联的,但是仍然可以成为虚函数,那么是不是可以说“内联函数不能成为虚函数”这句话有问题呢,是不是应该改成“显式定义的内联函数不能成为虚函数”。比如下面这个示例程序:#include using namespace std;class Base{ public: virtual void f1(){cou... 阅读全文
posted @ 2013-10-07 21:00 小薇林 阅读(2161) 评论(0) 推荐(1) 编辑
摘要: 摘要:本文列出几个基本的STL map和STL set的问题,通过解答这些问题讲解了STL关联容器内部的数据结构,最后提出了关于UNIX/LINUX自带平衡二叉树库函数和map, set选择问题,并分析了map, set的优势之处。对于希望深入学习STL和希望了解STL map等关联容器底层数据结构的朋友来说,有一定的参考价值。vector(向量)——STL中标准而安全的数组。只能在vector 的“前面”增加数据。deque(双端队列double-ended queue)——在功能上和vector相似,但是可以在前后两端向其中添加数据。list(列表)——游标一次只可以移动一步。如果你对链表 阅读全文
posted @ 2013-10-07 20:50 小薇林 阅读(2955) 评论(1) 推荐(0) 编辑
摘要: 五大内存分区在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。自由存储区,就是那些由malloc等分配的内存块,他和堆是十分相似的,不过它是用free来结束自己的生命的。全局/静态存储区,全局变量和静态变量被分配到同一块内存中,在以前的C语言中,全局变量又分为初始化 阅读全文
posted @ 2013-10-07 20:29 小薇林 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 2012-10-13 21:58:57|分类:其他|字号订阅相对于SOCKET开发者,TCP创建过程和链接折除过程是由TCP/IP协议栈自动创建的.因此开发者并不需要控制这个过程.但是对于理解TCP底层运作机制,相当有帮助. 而且对于有网络协议工程师之类笔试,几乎是必考的内容.企业对这个问题热情之高,出乎我的意料:-)。有时上午面试前强调这个问题,并重复讲一次,下午几乎每一个人都被问到这个问题。因此在这里详细解释一下这两个过程。TCP三次握手所谓三次握手(Three-way Handshake),是指建立一个TCP连接时,需要客户端和服务器总共发送3个包。三次握手的目的是连接服务器指定端口,建 阅读全文
posted @ 2013-10-07 18:05 小薇林 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 1、内存对齐:http://hi.baidu.com/sxnuwhui/item/bdd8cd9bdffe53d47b7f01a72、MVC与SSH框架对应关系:http://hi.baidu.com/sxnuwhui/item/fafc49730b26a04bef1e53a83、面试相关:http://blog.csdn.net/wfwd/article/details/7636644、非C++内建型别A和B, 在哪几种情况下B能隐式转化为A?// Case 1 : B公有继承自Aclass B : public A{ ...}// Case 2 : B实现了隐式转化为A的转化class B 阅读全文
posted @ 2013-10-07 18:01 小薇林 阅读(315) 评论(0) 推荐(0) 编辑
摘要: 内存对齐的规则以及作用 首先由一个程序引入话题: 1 //环境:vc6 + windows sp2 2 //程序1 3 #include 4 5 using namespace std; 6 7 struct st1 8 { 9 char a ;10 int b ;11 short c ;12 };13 14 struct st215 {16 short c ;17 char a ;18 int b ;19 };20 21 int main()22 {23 cout此时CPU先访问一次内存,读取0—3字节的数据进寄存... 阅读全文
posted @ 2013-10-07 17:59 小薇林 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 调整数组顺序使奇数位于偶数前面题目:输入一个整数数组,调整数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。要求时间复杂度为O(n)。还是利用两个量从两边扫....代码如下://调整数组顺序使奇数位于偶数前面#includeusingnamespacestd;voidmake_order(intdata[],intlen){if(len<=0 || data==NULL)return;else{intbegin=0,end=len-1;while(begin!=end){if((data[begin]&1)!=0){ //&优先级低于!=beg 阅读全文
posted @ 2013-10-07 00:56 小薇林 阅读(151) 评论(0) 推荐(0) 编辑
摘要: #include#include#includeusing namespace std;int count_ones(int n){ int sum=0; while(n!=0){ n=n-(n&(-n)); sum++; } return sum;}int main(){ int t,n; scanf("%d",&t); for(int i=0;i<t;i++){ scanf("%d",&n); printf("%d\n",count_ones(n)); } return 0;} 阅读全文
posted @ 2013-10-07 00:12 小薇林 阅读(132) 评论(0) 推荐(0) 编辑