随笔分类 - 笔试-面试
摘要:1: /* 2: author:justinzhang 3: email:uestczhangchao@gmail.com 4: time:2012-8-30 16:58:38 5: desc:for the practice of interview problem 6: */ 7: #include <iostream> 8: using na...
阅读全文
摘要:1: /* 2: @@ 3: Author: Justinzhang 4: Email: uestczhangchao@gmail.com 5: Time: 2012-9-1 22:08:31 6: Desc: It's a problem meet a long time ago. i've tried...
阅读全文
摘要:上午和同学一起讨论指针和引用的区别,其实大家都知道是怎么的。只是一直以来都没有证据,一直都没有深入下去,看看下层的汇编究竟是怎么回事?写了如下的代码,用VS2008生成可执行程序,然后用ollyDbg进行调试; #include <iostream>using namespace std;int main(){ int x = 0; int *px = &x; int &rx =...
阅读全文
摘要:/*Author:JustinZhangEmail:uestczhangchao@gmail.comTime:2012年4月22日23:39:40desc:高精度加法*/#include <iostream>#include <cstring>using namespace std;/*a、b为字符数组,内部存储了加数和被加数,ans用来存放最终结果,也为字符数组*/void arbitary_add(const char *a, const char *b,char *ans){ int lena = strlen(a); int lenb = strlen(b);
阅读全文
摘要:/**about: 腾讯面试,将一个单向链表逆序*author:justinzhang*email:uestczhangchao@gmail.com*estblished:2011年4月24日16:40:25*revised:2011年5月10日15:00:26*/#include <iostream>using namespace std;class node{ public: ...
阅读全文
摘要:1: /* 2: *discription:给定一组数,将零全部排到最后,将非零元素排在最前,华为面试 3: *autor:justinzhang 4: *Email:uestczhangchao@gmail.com 5: *Established:2011年2月8日21:13:47 6: *Revised1:2011年4...
阅读全文
摘要:/***时间:2012年3月9日13:04:00*作者:张超*Email:uestczhangchao@gmail.com*/#include <iostream>#include <windows.h>#include <time.h>using namespace std;int Mat[1000];void fun1(){ int *tmp = &Mat[500]; for (i...
阅读全文
摘要:va_list/va_start/va_arg/va_end这几个宏,都是用于函数的可变参数的。 我们来看看在vs2008中,它们是怎么定义的: 1: ///stdarg.h 2: #define va_start _crt_va_start 3: #define va_arg _crt_va_arg 4: #define va_end _crt_va_end 5: ...
阅读全文
摘要:大家都知道C语言中volatile这个关键字,它是“易变”的意思,其实把它理解成“直接存取原始地址”比较确切; 1.直接修饰C函数,方便编译器进行优化 我们会在一些代码中用volatile关键字来修饰函数,如linux0.12的源代码中就有这样的语句: 在linux的source code(linux/mm/memory.c)中有这样两句: volatile void do_exit(...
阅读全文
摘要:在VS2008中进行的缓冲区溢出实验 其中代码如下所示: 1: #include <stdio.h> 2: #include <stdlib.h> 3: 4: void why_here(void) //这个函数没有任何地方调用过 5: { 6: printf("why u here !n\n"); 7: prin...
阅读全文
摘要:在一个c文件中定义一个变量,在另外的c文件中引用该文件中的变量,变量默认是extern的,也就是对外部可见的,如果使用了static声明,那么这个变量就是对这个文件可见,其他模块是不可见的: 如下例:
阅读全文
摘要:对二维指针进行sizeof运算是什么意思呢?(c08:Quoter.cpp)屏幕剪辑的捕获时间: 2011-07-17 10:19得到的结果如下所示:Sizeof quotes = 36,正好是指针的大小×一维指针的个数,sizeof *quotes是计算一维指针的大小,所以对二维指针进行sizeof 运算,得到的结果是二维指针中包含的一维指针的个数×一位指针的长度。
阅读全文
摘要:一、定义 1.原码 正数的符号位为0,负数的符号位为1,其它位按照一般的方法来表示数的绝对值。用这样的表示方法得到的就是数的原码。 【例2.13】当机器字长为8位二进制数时: X=+1011011 [X]原码=01011011 Y=+1011011 [Y]原码=11011011 [+1]原码=00000001 [-1]原码=10000001 [+127]原码=01111111 [-127]原码=1...
阅读全文
摘要:有如下代码: 1: #include <stdio.h> 2: 3: #include <string.h> 4: 5: #include <malloc.h> 6: 7: #include <stdlib.h> 8: 9: typedef struct AA 10: 11: { 12: 13: int b1:5; 14: 15: int b2:2; 16: 17: }AA; 18: 19: in...
阅读全文