自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(18)
  • 收藏
  • 关注

原创 面试系列11--有符号与无符号的类型转换以及数位扩展问题

题目:  int main()  {      unsigned int un;      unsigned char uch;      uch = (unsigned char) 128;      un = uch;       printf("un = %d/n", un);      printf("un = %u/n", un);      system("PAUSE");

2006-06-30 22:51:00 3064 1

原创 C++中的运算符优先级 - C++ Operator Precedence

关键字: C, C++, 运算符优先级, Operator Precedence  Precedence Operator Descrip

2006-06-30 17:52:00 8948

原创 A.TNG 记事-始于2006.6.27

这里是 A.TNG 记事,主要记录每天的点点滴滴,流水帐而已,不小心点到这里来的朋友,赶紧关掉这个页面吧,你、我都不想浪费你的时间。-----------------------------------------------------------------------------2008.1.22希望继续开发之路,希望继续Foucs在开发领域。继续写代码,敲键盘。--------------

2006-06-27 11:36:00 1100

转载 关于ASSERT(断言)使用的规则--摘自《高质量C/C++编程指南》

摘自《高质量C/C++编程指南》Page 41-42...程序一般分为Debug 版本和Release 版本,Debug 版本用于内部调试,Release 版本发行给用户使用。断言assert 是仅在Debug 版本起作用的宏,它用于检查“不应该”发生的情况。示例6-5 是一个内存复制函数。在运行过程中,如果assert 的参数为假,那么程序就会中止(一般地还会出现提示对话,说明在什么地方引发

2006-06-22 14:53:00 16391 2

原创 面试系列10--关于指针的加减操作的理解

原题:  main()  {    int a[5]={1,2,3,4,5};    int *ptr=(int *)(&a+1);    printf("%d,%d",*(a+1),*(ptr-1));  }  程序输出是什么。解答:  程序输出: 2,5分析:  这里主要是考查关于指针加减操作的理解。  对指针进行加1操作,得到的是下一个元素的地址,而不是原有地址值直接加1。所以,一个

2006-06-22 11:22:00 10402 4

原创 面试系列9--怎样才能检测到链表中存在循环

原题:  怎样才能检测到链表中存在循环 (from 《C专家编程》) 解答:   条件: 没有任何条件。  方法: 对访问过的每个元素作个标记,遍历整个链表,当第一次遇到作过标记的元素,则找到了环的开始节点。  条件: 链表存在于只读存储区,不可做标记。  方法: 把已检查过的节点指针放入一个数组中,每次检查新的节点指针的时候,就在表中查找,看是否存在相同的节点。如果存在,则表明该节点

2006-06-19 21:20:00 2049 1

原创 面试系列8--返回整数中为1的位数(优化版)

原题:  Write the function int bitCount(short input) that takes a short as input and   returns an int.  The function returns the number of bits set in the input   variable.  For instance:  bitCount(7)

2006-06-19 11:32:00 1946 2

原创 面试系列7--用两个栈实现一个队列的功能

原题:  用两个栈实现一个队列的功能?思路:  假设两个栈 A 和B,且都为空。  可以认为栈 A 为提供入队列的功能,栈 B 提供出队列的功能。  入队列: 入栈 A   出队列:  1 如果栈B 不为空,直接弹出栈 B 的数据。  2 如果栈 B 为空,则依次弹出栈 A 的数据,放入栈 B 中,再弹出栈 B 的数据。

2006-06-17 14:35:00 2662 1

原创 面试系列6--TCP协议建立连接初期的“三次握手”

原题:  TCP/IP通信建立的过程怎样?解答:    TCP协议是面向连接的,两端主机需要同步双方的初始序号。同步需要双方都发送自己的初始序号,并且接收双方的确认(ACK)信息;同时接收对方的初始序号,并且发送确认的ACK。这个过程就是三次握手(Three-way handshake)。  A->B SYN:我的初始序号是X,ACK是0,设置SYN位,未设置ACK位。  B->A A

2006-06-17 14:33:00 2091

原创 面试系列5--以单词为最小单位翻转字符串(改进版)

原题:  以单词为最小单位翻转字符串  Write the function String reverseStringWordByWord(String input) that reverses   a string word by word.  For instance,   reverseStringWordByWord("The house is blue") --> "blue is

2006-06-16 10:46:00 2271 1

原创 面试系列4--以单词为最小单位翻转字符串

原题:  以单词为最小单位翻转字符串  Write the function String reverseStringWordByWord(String input) that reverses   a string word by word.  For instance,   reverseStringWordByWord("The house is blue") --> "blue is

2006-06-16 09:30:00 1469 1

原创 面试系列3--冒泡算法(优化)

冒泡是一个经典算法。本段代码增加了一些优化:增加 b_exchange ,若本轮冒泡没有交换数据,则表示排序成功,退出增加 n_exchange, n_head ,记录最近的交换位置,下轮冒泡只要冒到该位置即可 /********************************************************************    created:    200

2006-06-15 11:03:00 1288

原创 面试系列2--约瑟夫环问题(Josephus)

原题: 用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。(约瑟夫环问题 Josephus)提示:    由于当某个人退出圆圈后,报数的工作要从下一个人开始继续,剩下的人仍然是围成一个圆圈的,可以使用循环表,由于退出圆圈的工作对应着表中结点的删除操作,对于这种删除操作频繁的情况,选用效率较高的链表结构,为了程序指针每一次都指向一个具体的代表一个人

2006-06-14 22:28:00 1739

原创 Visual Assist X 模板功能(AutoText)的一些修改

首先需要找到模版文件,通常的目录:Program Files/Visual Assist X/Templates/Cpp.tpl 用 UltraEdit 打开,我们可以分析一下该文件的格式:#in:#include "?0x0C蓝色的 #in 表示当你输入 #in 时,红色的冒号是分隔符,黑色的 #include "? 是 Assist 会自动为你填充的内容。其中红色的 0x0

2006-06-14 17:19:00 2040

原创 面试系列1--返回整数中为1的位数

  原题:  Write the function int bitCount(short input) that takes a short as input and   returns an int.  The function returns the number of bits set in the input   variable.  For instance:  bitCount(7

2006-06-13 20:15:00 1579 2

转载 MD5算法研究

    什么是MD5?MD5的历史如何?MD5算法有什么特点?其安全性如何?有什么典型的应用呢?读完本文,你将对MD5算法有一个比较清晰的了解。   MD5的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rives

2006-06-13 11:23:00 956

原创 无题-2006.6.8

在这个内存便宜的年代,尽量考虑用空间换时间的解决问题的方式。一定要维持几条原则:1 不要做那种费劲不讨好的事情,不要老想着节省内存,这个年代,内存比白菜还便宜。(特殊情况除外)2 如果有变态想法,写一些狂变态的 for/while... 语句的话,尽量写好注释,不要到头来连自己也看不懂。3 写代码之前,一定要知道自己在干什么,不要手放在键盘上就开始打,不然,按得最多的是退格键。

2006-06-08 21:15:00 1548

原创 看看memcpy和memmove的区别

找到了一些源码,从中可以学到不少东西。void * __cdecl memcpy (        void * dst,        const void * src,        size_t count        ){        void * ret = dst;        /*         * copy from lower addresses to highe

2006-06-07 17:16:00 2000 3

空空如也

空空如也

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

TA关注的人

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