<?xml version="1.0" encoding="utf-8"?><rss version="2.0">
<channel>
<title><![CDATA[RocketMan&#39;sRoom]]></title>
<link>http://blog.pfan.cn/andyhou</link>
<description>编程爱好者博客</description>
<language>zh-cn</language>
			<item>
		<title><![CDATA[按Ctrl和Ener组合键用法]]></title>
		<link>http://blog.pfan.cn/andyhou/42244.html</link>
		<description><![CDATA[&nbsp;有同学要我帮他实现按Ctrl和Ener组合键用法。查了一下有两种。其实也一样的。
VC中实现。
BOOL CMy2132Dlg::PreTranslateMessage(MSG* pMsg) {&nbsp;// TODO: Add your specialized code here and/or call the base class/*&nbsp;&nbsp;if(pMsg-&gt;message == WM_KEYDOWN)&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;if(VK_SHIFT == pMsg-&gt;wParam)&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(GetAsyncKeyState(VK_CONTROL) &gt;&gt; 15 &amp; 0x1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DealData();&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return TRUE;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;if(VK_ESCAPE == pMsg-&gt;wParam || VK_RETURN == pMsg-&gt;wParam)&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;return TRUE;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;}*/&nbsp;&nbsp;if(pMsg-&gt;message==WM_KEYDOWN)&nbsp;{ 
&nbsp;&nbsp; //如果按键是：Ctrl+Ener则发送消息&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(pMsg-&gt;wParam==VK_RETURN &amp;&amp; GetKeyState(VK_CONTROL) &amp; 0x80)&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dea]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2009-04-20 13:35:00</pubDate>
		</item>
				<item>
		<title><![CDATA[VA_LIST的用法]]></title>
		<link>http://blog.pfan.cn/andyhou/41937.html</link>
		<description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 有关VA_LIST的用法








VA_LIST 是在C语言中解决变参问题的一组宏
VA_LIST的用法：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; （1）首先在函数里定义一具VA_LIST型的变量，这个变量是指向参数的指针&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; （2）然后用VA_START宏初始化变量刚定义的VA_LIST变量，这个宏的第二个参数是第一个可变参数的前一个参数，是一个固定的参数。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; （3）然后用VA_ARG返回可变的参数，VA_ARG的第二个参数是你要返回的参数的类型。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; （4）最后用VA_END宏结束可变参数的获取。然后你就可以在函数里使用第二个参数了。如果函数有多个可变参数的，依次调用VA_ARG获取各个参数。VA_LIST在编译器中的处理：
(1)在运行VA_START(ap,v)以后，ap指向第一个可变参数在堆栈的地址。（2）VA_ARG()取得类型t的可变参数值，在这步操作中首先apt = sizeof(t类型)，让ap指向下一个参数的地址。然后返回ap-sizeof(t类型)的t类型*指针，这正是第一个可变参数在堆栈里的地址。然后用*取得这个地址的内容。（3）VA_END(),X86平台定义为ap = ((char*)0)，使ap不再指向堆栈，而是跟NULL一样，有些直接定义为((void*)0)，这样编译器不会为VA_END产生代码，例如gcc在Linux的X86平台就是这样定义的。
要注意的是：由于参数的地址用于VA_START宏，所以参数不能声明为寄存器变量，或作为函数或数组类型。
使用VA_LIST]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2009-04-03 09:58:00</pubDate>
		</item>
				<item>
		<title><![CDATA[应用程序实现XP风格简便方法[转】]]></title>
		<link>http://blog.pfan.cn/andyhou/41761.html</link>
		<description><![CDATA[很简单，此方法SDK/MFC通用，简单的讲就是插入一个资源，类别为24，ID为1，以VC6为例，2003和 05类似。在VC6资源编辑试图下点击Insert(插入)，然后选择Custom(自定义)，在Resource Type(资源类别)填上24，然后将新插入的资源属性改为如下 在右边内资源容中输入 &lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&gt; &nbsp; &nbsp; &nbsp;&nbsp; &lt;assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"&gt; &nbsp; &nbsp; &nbsp;&nbsp; &lt;assemblyIdentity &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; name="XP style manifest" &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; processorArchitecture="x86" &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; version="1.0.0.0" &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; type="win32"/&gt; &nbsp; &nbsp; &nbsp;&nbsp; &lt;dependency&gt; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &lt;dependentAssembly&gt; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&lt;assemblyIdentity &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; type="win32" &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; name="Microsoft.Windows.Common-Controls" &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; version="6.0.0.0" &nb]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2009-03-24 15:56:00</pubDate>
		</item>
				<item>
		<title><![CDATA[软件开发学习]]></title>
		<link>http://blog.pfan.cn/andyhou/41148.html</link>
		<description><![CDATA[&nbsp;http://www.rupeng.com/forum/jian-145.html软件开发学习的好论坛。学习软件开发的人多多到那里去。你可以最快学习软件开发。呵呵。我就从那里起步的。]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2009-03-02 09:05:00</pubDate>
		</item>
				<item>
		<title><![CDATA[IP地址和子网掩码的区别]]></title>
		<link>http://blog.pfan.cn/andyhou/39137.html</link>
		<description><![CDATA[我们都知道，IP是由四段数字组成，在此，我们先来了解一下3类常用的IP A类IP段 1.0.0.0 到127.255.255.255 B类IP段 128.0.0.0 到191.255.255.255 C类IP段 192.0.0.0 到223.255.255.255 XP默认分配的子网掩码每段只有255或0 A类的默认子网掩码 255.0.0.0 一个子网最多可以容纳1677万多台电脑 B类的默认子网掩码 255.255.0.0 一个子网最多可以容纳6万台电脑 C类的默认子网掩码 255.255.255.0 一个子网最多可以容纳254台电脑 我以前认为，要想把一些电脑搞在同一网段，只要IP的前三段一样就可以了，今天，我才知道我错了。如果照我这说的话，一个子网就只能容纳254台电脑？真是有点笑话。我们来说详细看看吧。 要想在同一网段，只要网络标识相同就可以了，那要怎么看网络标识呢？首先要做的是把每段的IP转换为二进制。（有人说，我不会转换耶，没关系，我们用Windows自带计算器就行。打开计算器，点查看&gt;科学型，输入十进制的数字，再点一下“二进制”这个单选点，就可以切换至二进制了。） 把子网掩码切换至二进制，我们会发现，所有的子网掩码是由一串[red]连续[/red]的1和一串[red]连续[/red]的0组成的（一共4段，每段8位，一共32位数）。 255.0.0.0 11111111.00000000.00000000.00000000 255.255.0.0 11111111.11111111.00000000.00000000 255.255.255.0 11111111.11111111.11111111.00000000 这是A/B/C三类默认子网掩码的二进制形式，其实，还有好多种子网掩码，只要是一串连续的1和一串连续的0就可以了（每段都是8位）。如11111111.11111111.11111000.00000000，这也是一段合法的子网掩码。子网掩码决定的是一个子网的计算机数目，计算机公式是2的m次方，其中，我们可以把m看到是后面的多少颗0。如255.255.255.0转换成二进制，那就是11111111.11111111.11111111.00000000，后面有8颗0，那m就是8，255.255.255.0这个子网掩码可以容纳2的8次方（台）电]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-10-28 23:54:00</pubDate>
		</item>
				<item>
		<title><![CDATA[【笔试经验】高盛笔试题精解[转]]]></title>
		<link>http://blog.pfan.cn/andyhou/38821.html</link>
		<description><![CDATA[【笔试经验】高盛笔试题精解
杨中科 发表于: 2008-9-30 17:27 来源: 计算机321 
1、A是一个用户自定义类。int a = 100;A *ptr = new A [a];delete ptr;这段代码是干什么的，有个错误请指出来，如何提高效率？JSJ321.com老师分析：这段代码创建了一个包含100个类A的实例的数组。这个代码中删除对象数组占据内存空间的方式是“delete[]”而不是“delete”，因此应该改成：delete[] ptr。因为创建的是100个元素的数组，因此不需要一个单独的变量a，直接如下修改：A *ptr = new A [100];delete[] ptr;2、How to calculate (1 + 2 + 3 + … + n)?JSJ321.com老师分析：不要用老师讲的for循环来计算累计值，而是使用等差数列计算公式，这样效率会高很多int F(int n){return n*(n+1)/2;}3、 在一个火车站：每10分钟就有一火车离站向南开去；每10分钟，也有另外一辆火车离站向北开去。每天，你到达这个火车站的时间并不是固定的（换言之，在时间上你是随机到达火车站的）。但是在你每次到达以后，你就会乘坐最先到站的火车离开，而不管它是往北或者是往南开。 这样在乘坐了一年以后，你发现在90%的天数里，你所乘坐的是南行的火车。请问这是为什么？JSJ321.com老师分析：答案是“南行的火车时间比北行的时间早1分钟”。比如：南行的时刻表为：12：00，12：10，12：20，12：30，、、、 北行的火车时间表为：12：01，12：11，12：21，12：31，、、、 这样的话，除非是你在到达的时候为12：00以后而在12：01之前，那么，从12：02到12：10之间，你都会乘坐南行火车。依此类推、、、这样的话，你在每10分钟里，乘坐南行火车的几率为90%。 4、 你独自一人在一孤岛上等待着救护人员的到来，但他们只会在第10天到达（今天是第零天）。你手头上有两种药品：“甲”和“乙”各10粒。想要活到第二天的话，你必须吃一粒“甲”和一粒“乙”。可是，今天由于不小心你把“甲”和“乙”的颗粒混在了一块，而你又无法辨认出哪粒是“甲”、哪粒是 “乙”来。想要活到第十天的话，你需要怎么去做？JSJ321.com老师分析：把20颗粒]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-10-11 15:51:00</pubDate>
		</item>
				<item>
		<title><![CDATA[【笔试经验】IBM公司的三道笔试题解析[转]]]></title>
		<link>http://blog.pfan.cn/andyhou/38820.html</link>
		<description><![CDATA[【笔试经验】IBM公司的三道笔试题解析
杨中科 发表于: 2008-9-30 16:49 来源: 计算机321 
1、在房里有三盏灯，房外有三个开关，在房外看不见房内的情况，你只能进门一次，你用什么方法来区分那个开关控制那一盏灯？JSJ321.com老师分析：先打开开关A，5分钟后再开开关B。然后进屋，不亮的是C，再摸灯管，温度高的是A，剩下的是B。2、有两根不均匀分布的香，每根香烧完的时间是一个小时，你能用什么方法来确定一段15分钟的时间？JSJ321.com老师分析：先把一根香从两头点，另一个只点一头，等两头香点完时候，是半小时，那根一头点的还剩下半小时，之后再把剩下的从两头点，然后完毕的时间就是15分钟。3、：一个经理有三个女儿，三个女儿的年龄加起来等于13，三个女儿的年龄乘起来等于经理自己的年龄，有一个下属已知道经理的年龄，但仍不能确定经理三个女儿的年龄，这时经理说只有一个女儿的头发是黑的，然后这个下属就知道了经理三个女儿的年龄。请问三个女儿的年龄分别是多少？为什么？JSJ321.com老师分析：下属知道经理的年龄, 只要把13分成三个数, 三数乘积等于经理年龄有多种可能性 所以, 令下属猜不出答案的原因是: 缺乏附加条件, 三元方程无确定解，一定要转换成二元方程 假设三个女儿中没有双胞胎, 那么三个人年龄之间的差距应该大于一个值(生物学常识) 黑发是显性基因, 如果经理夫妇都不是黑发,那么这黑发的女孩就是... 真相只有一个: 女孩中没有双胞胎, 但是有有两个女孩的年龄是相同的! 然后, 解二元方程。显然3个女儿的年龄都不为0，要不爸爸就为0岁了，因此女儿的年龄都大于等于1岁。这样可以得下面的情况：1*1*11=11，1*2**10=20，1*3*9=27，1*4*8=32，1*5*7=35，{1*6*6=36}，{2*2*9=36}，2*3*8=48，2*4*7=56，2*5*6=60，3*3*7=63，3*4*6=72，3*5*5=75，4*4*5=80因为下属已知道经理的年龄，但仍不能确定经理三个女儿的年龄，说明经理是36岁（因为{1*6*6=36}，{2*2*9=36}），所以3个女儿的年龄只有2种情况，经理又说只有一个女儿的头发是黑的，说明只有一个女儿是比较大的，其他的都比较小，头发还没有长成黑色的，所以3个女儿的年龄分别为2，2，9！]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-10-11 15:50:00</pubDate>
		</item>
				<item>
		<title><![CDATA[软件开发方向的大学生千万不能被误导[转]]]></title>
		<link>http://blog.pfan.cn/andyhou/38819.html</link>
		<description><![CDATA[软件开发方向的大学生千万不能被误导
杨中科 发表于: 2008-9-18 13:44 来源: 计算机321 
今天看到两篇文章，都是谈软件开发方向的大学生应该学什么的。总是在网上看到大面积的在吹嘘“计算机专业高校教的已经过时了，企业要求掌握开发经验的大学生，培训机构异常火爆”之类的话，我突然意识到这些其实都是那些培训机构的本位主义的炒作而已。其实大部分企业招聘应届生的时候并不是要求学生有太多的所谓项目经历，但是要求最高的是应届生对专业课的掌握程度，企业的笔试题也是以专业课的题目为主。这是企业的校园招聘和社会招聘不同的地方。有人可能会举出反例，我只能说那样要求应届生有这样那样项目经历的公司都是草台班子小公司，不在我们考虑的范围之内。有的公司招聘应届生的时候如果看到你有太多项目经验的时候甚至怀疑你在校期间是否有认真学习专业课。不能忽视的一个事实是很多高校的任课教师并没有很丰富的开发经验，因此也不能教给学生关于“这门课有什么实际用途”之类的问题，这一直困惑着我们。可以看到像jsj321.com这样的网站已经开始在向这方面努力了，搞了很多针对在校计算机专业大学生的免费在线课程，请了很多有项目经验以及扎实理论基础的工程师来讲课，这样与学校的课程同步学习，“白天听大学老师讲理论，晚上听网上老师讲实战”，两者相结合就能培养出有实战经验，同时又不失理论基础的软件精英。下面是这两篇文章的摘录：
写给还在大学的兄弟姐妹
FROM：http://www.cnblogs.com/hanxianlong/archive/2008/09/17/1292446.html
基础很重要 许多企业招聘，要求大学本科毕业生有一定的工作经验。而现实是，当今的大学教育使得有工作经验的本科生少之又少。从大学过来的人都应该清楚大学生活是什么样子：要么很努力的学习——这是考研一族，要么外出找兼职——这是工作一族，要么就过一天少一天——这是混日子一族。其他的情况当然也有，在此暂且只分为这几类学生。考研的学生，若是考研成功便进一步的去深造，若失败则面临着求职。而他们学习是如此的刻苦，何来工作经验？兼职的学生，有些同学可能做的很好，能够很好的处理兼职与学习的关系，而某些认为兼职就是“赚钱”的学生可能处理的并不是那么好，认为“能让我毕业就行”，殊不知毕业时找工作别人对于兼职所带来的工作经验向来是不太认可的。混日]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-10-11 15:49:00</pubDate>
		</item>
				<item>
		<title><![CDATA[计算机专业学生寻找实习的经历和思考（3）[转]]]></title>
		<link>http://blog.pfan.cn/andyhou/38818.html</link>
		<description><![CDATA[计算机专业学生寻找实习的经历和思考（3）
1.&nbsp; &nbsp; 为什么要找实习a)&nbsp; &nbsp; 公司和企业的人才招聘趋势。越来越多的企业开始倾向于从实习生中选拔正式员工，而非校园招聘，譬如 i.&nbsp; &nbsp; CA就没有校园招聘，完全从实习生中录取 ii.&nbsp; &nbsp; IBM近两年也突出实习生招聘，而淡化校园招聘 iii.&nbsp; &nbsp; 腾讯今年的实习生招聘是校园招聘的一部分，通过实习生的招聘流程，校园招聘中可以直接到最后一个流程，面对HR。 iv.&nbsp; &nbsp; MS，Baidu，Google等企业的转正几率也是非常大的。&nbsp;&nbsp;理由很简单：成本低廉，质量可靠，所谓物美价廉。&nbsp;&nbsp;i.&nbsp; &nbsp; 首先，实习生的筛选和校园招聘的筛选是一致的，更多的时候，我认为，实习生的竞争更加激烈，所以企业招到实习生质量不仅达到，甚至是高过校招的质量。据说今年IBM的Blue path way，简历达4W份，笔试1W人，面试1K+人，这样良好的人力资源，还会挑不到好的人才？ ii.&nbsp; &nbsp; 实习生在公司实习期间，企业可以观察你的能力，发现优秀的人才，而不合适的人，由于签署的不是正式合同，要筛选掉，也是没有成本，没有风险的。 iii.&nbsp; &nbsp; 另外，实习生省去了校招的培训成本，并且至少比校招的人员在公司多干半年，甚至一年，同时拿的是实习工资。一方面是廉价劳动力， 另一方面能够更快的融入团队，进入角色。 iv.&nbsp; &nbsp; 宣传公司文化，IBM的浩浩荡荡，广移的香格里拉，不用多说了。 b)&nbsp; &nbsp; 企业有企业的利益，我们为什么要寻找实习呢？很简单，我们的利益也在里面。 i.&nbsp; &nbsp; 提高自己，增加实践经验，了解和掌握专业的工程化的开发方式，让自己变得专业。 ii.&nbsp; &nbsp; 提高自己的软实力，包括团队精神，沟通能力，以及性格，思维方式的成熟。 iii.&nbsp; &nbsp; 了解职场，了解自己所在的行业，对我们来说是IT业，以及在这个行业中的定位。更重要的，是了解自己选择的职业和工作，明白这条路到底是否适合自己，以便更早制定下一步的职业规划。 iv.&nbs]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-10-11 15:48:00</pubDate>
		</item>
				<item>
		<title><![CDATA[计算机专业学生寻找实习的经历和思考（2）[转]]]></title>
		<link>http://blog.pfan.cn/andyhou/38817.html</link>
		<description><![CDATA[计算机专业学生寻找实习的经历和思考（2）
3．&nbsp; &nbsp; 笔试和面试经历的总结，过于具体的东西，不便透露，毕竟签了保密协定。 a)&nbsp; &nbsp; 微软，我投的是测试部门的Linux职位 i.&nbsp; &nbsp; 电面问一些Linux多线程，网络编程相关的问题。包括同步互斥机制，异步IO等。另外，还有例行的项目经验的介绍。也问了一些基本算法，包括时空复杂度（“计算机321”注释：也就是时间复杂度和空间复杂度）的分析。最后让写一段字符串处理相关的代码，发到邮箱里。 ii.&nbsp; &nbsp; 笔试三个小时，200分，题目有选择题，编程题，分析题，设计题，难度我感觉是最大的，涵盖编程语言，算法，数据库，正则表达式，软件工程，操作系统，计算机网络等等。由于不同的部门关注不同的题目，所以总分不决定一切。貌似没有120分及格的…我深刻的体会了自己的弱小… 后面的都是研发职位了 。b)&nbsp; &nbsp; Google i.&nbsp; &nbsp; 笔试也是一些基础的东西，算法，离散数学，比较简单。 ii.&nbsp; &nbsp; 一面基本算法+开放设计题。&nbsp;&nbsp;c)&nbsp; &nbsp; 百度 i.&nbsp; &nbsp; 笔试三题基础选择，然后两题程序设计，最后一题系统设计，难度适中吧。 ii.&nbsp; &nbsp; 面试比较正规，一面基础，二面项目，三面HR，可惜没有机会去体验下。 d)&nbsp; &nbsp; 腾讯 i.&nbsp; &nbsp; 非常平易近人，笔试题目就像学校考试。半个小时交卷闪人…… ii.&nbsp; &nbsp; 面试也是传统的三面，面试官和HR都非常的Nice，一面之后就开始聊天了，呵呵，很赞。非常喜欢和他们聊天~ 一面主要在聊miaoftpd，问了一些具体实现的问题。二面在聊看过的书籍，学习的方法和方式，一些职业规划。三面和HR gg继续聊。那天聊的真的很high。另外非常感谢他们给我的一些建议，非常的中肯。 e)&nbsp; &nbsp; CA i.&nbsp; &nbsp; 笔试题也非常博杂，我除了C++，Linux和DB以外，Win32，.Net，MFC，com基本上都不会…. ii.&nbsp; &nbsp; 面试只有一面，是team member + t]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-10-11 15:47:00</pubDate>
		</item>
				<item>
		<title><![CDATA[计算机专业学生寻找实习的经历和思考（1）[转]]]></title>
		<link>http://blog.pfan.cn/andyhou/38816.html</link>
		<description><![CDATA[计算机专业学生寻找实习的经历和思考（1）
beida 发表于: 2008-9-27 14:03 来源: 计算机321 
金三银四找实习 首先，把我的情况和找实习的结果总结一下。情况： 计算机科学与技术专业大三，在大二的时候我已经决定要找工作，并且出去做开发，这个思考有一个比较长期的过程，大一萌芽，大二思考，大三确定，具体我会在后一篇文章中说明。 主要方向是Linux/C/C++，坦白的说，我一开始的目标是baidu，但是现在的情况有变化。 结果： offer有两个，CA的研发和腾讯的后台研发，在这两边，据公司方面说，我都是唯一的一个本科生。其中腾讯由于北京研究院不接受本科研发，我只能选择深圳。 微软，种种原因，和我擦肩而过，昨天刚刚在CA入职，接到微软的电话，婉言谢绝了。 IBM，研发，当时已经拿到CA的offer，于是据掉了面试通知。 百度，新产品部的研发，笔试过后有消息说我的简历被锁定了，但是到现在为止一直没有通知，估计是被当备胎了T_T NOKIA：个人不是很想去，CA的offer拿到后就再没考虑过了。 Google：研发，清华笔试后，一面挂掉，第一次面试，认了。当然，我自己实力还不够是主要因素。 过程： 1．&nbsp; &nbsp; 前期准备 a)&nbsp; &nbsp; 就像我前面提到的，找工作这个目的很早就明确了，基于自身的职业规划，我于去年十月开始着手准备寻找实习。 &nbsp; &nbsp; 实习的目标很明确，能转正，能积累经验，公司条件不错，外企最好。如同前面提到的，我的核心目标是baidu，这个很奇怪，之前的我对baidu有一种憧憬，没有特别的原因，大概是baidu给我的印象非常好罢。 c)&nbsp; &nbsp; 于是， &nbsp; &nbsp; 1.我收集了一些信息，包括查看baidu的招聘信息，另外请教了下牛人，和baicool聊聊天^_^。了解到baidu这边需要三个方面的能力： i.&nbsp; &nbsp; 1.Linux 编程。 ii.&nbsp; &nbsp; 2.算法和数据结构 iii.&nbsp; &nbsp; 3.C++。 &nbsp; &nbsp; 2.明确路线和学习方式。明确了目标以后，在软件群里和大家请教了一番，基本摸索出一条路线，大三上学期的半年，踏上了每天自习的道路。可以说，那个学期的自习，无论从时间，]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-10-11 15:46:00</pubDate>
		</item>
				<item>
		<title><![CDATA[VC++学习方法及书籍推荐[转]]]></title>
		<link>http://blog.pfan.cn/andyhou/38789.html</link>
		<description><![CDATA[现在的计算机图书发展的可真快,很久没去书店,昨日去了一下,真是感叹万千,很多陌生的出版社,很多陌生的作者,很多陌生的译者,书名也是越来越夸张,什么××天精通××,精通××编程, ××宝典等等,书的印刷质量真的很好,纸张的质量也是今非昔比啊,但书的内容好象却是越来越让人失望,也许是我老了,我的思想我的观念已脱离现实社会,也许是外面的世界变化得太快,我编程数月,出去一走,路已不是原来的路……回家看着书架上的旧书发呆,听着李克勤的旧欢如梦,才发现自已原来太喜欢怀旧. 　　笔者从事软件开发多年,其中有两年多的时间一直是与Windows底层打交道,涉及到驱动程序,嵌入式OS,Windows应用程序(如GUI,图形图像技术,多线程,组件技术等等)等方面的开发,写了很多很的源代码……也许我的阅读面过于狭小，书架里基本上都是Jeffrey Richter，Charles Petzold，侯捷老师以及潘爱民老师的书，这些书一直陪伴着我，并给我的编程工作带来了很大的帮助，希望我的推荐对你也有帮助。　　Windows编程类　　Windows 程序设计（第5版）（上、下册）　　原书名： Programming Windows (Fifth Edition) 　　原出版社：Microsoft Press　　作者：（美）Charles Petzold　　译者：北京博彦科技发展有限责任公司　　出版社：北京大学出版社　　出版日期：2001-03　　页码：1376　　定价：160:00RMB　　此书被认为是Windows编程最好的导论性读本。在1994年5月，此书的作者Charles Petzold被《Window Magazine》和Microsoft公司授予”Windows Pioneer”奖，以表彰他对Microsoft Windows的成功作出的贡献，可见该书的权威性，以至于“如果对Windows开发有什么问题的话，请翻阅PetZold的著作吧”几乎成了一句至理名言。　　本书覆盖了WINDOWS编程的方方面面，将windows编程的每一个元素（如输入，输出及对话框，图形，多媒体，线程，文档与视图，Internet等等）讲解得很清晰、简明，采用的大多是具有代表性的示例，代码风格好并且很有实用价值。笔者认为这本书是学习WINDOWS编程的经典入门好书，每一次的细心阅读都会对WINDOWS编程有更]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-10-09 15:39:00</pubDate>
		</item>
				<item>
		<title><![CDATA[C/C++招聘的一些感受和经验[转]]]></title>
		<link>http://blog.pfan.cn/andyhou/38759.html</link>
		<description><![CDATA[&nbsp;前段时间刚参加了n多公司的C/C++软件工程师的面试，有国企，外企，私企（moto，飞思卡尔，港湾，中国卫星XXX（这个牛））等等等等。感受感想颇多，近日终于空闲，在此表述一下。 &nbsp; &nbsp; 本人基本条件：3年开发经验，2year+ Windows development experence，1year+ Linux experence. 熟悉C，C++，MFC/SDK/API,MiniGUI...（都是一些基本的了）。前公司并不知名，但在其中做个team leader。 言归正传 找工作本人认为最重要的就是前期准备了。 &nbsp; &nbsp; 首先。简历一定要写的切合主题。招聘单位要的是你的技能，这个只要大概能符合就可以，关键他们需要的是你的开发经验，一定要在简历中完美的体现出你之前所参与的项目，一定要写明你在项目中的职责和地位，企业通过这方面侧面对你的技术水平进行定位，因此一定要实事求是的写的尽可能的详细，只要别吹牛B，再详细都不过分。只要上面这些内容得到充分的发挥，那么你基本可以得到面试的机会了。 &nbsp; &nbsp; 面试之笔试。去了10多个单位面试。题惊人的相似，如果你想顺利通过笔试，有两条建议：一，去网上找一些汇总的笔试题，仔细的看看里面关于数组，指针，链表，类的问题，90%的笔试题目就是里面的原题，从CSDN的下载频道可以找到N多笔试题汇总，看过1遍之后你会发现所有的汇总内容都差不多。二、这点就有点那个了，呵呵。不好听叫作弊，好听的话叫夹带。可以把所有您认为比较复杂的算法题打印出来，大概常考的有十几个吧，比如strcpy，strcat，链表逆序，排序，字符串匹配查找，检测单向链表上的环等等，一定要带着这个去笔试，好公司一般都会为前来笔试的人员单独准备一间屋子，所以只要看到差不多的算法，放心大胆的把答案拿出来copy吧。 &nbsp; &nbsp; 这里我说一下，不是出的这些题我们不会写，只是在笔试这种情况下，要把代码写的尽量简练，完善，并且工整确实有些困难。 &nbsp; &nbsp; 去外企或规模大的私企或者股份制，要做好有英语题的准备，不过一般情况下不难，汉译英，英译汉，只要别空着就没问题。 &nbsp; &nbsp; 只要你按照上面的做了，OK，你已经可以和HR以及技术主管直接对话了。 &nbsp; &nbs]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-10-08 14:21:00</pubDate>
		</item>
				<item>
		<title><![CDATA[国际：对初级软件开发者的一些建议（1）]]></title>
		<link>http://blog.pfan.cn/andyhou/36601.html</link>
		<description><![CDATA[这是我对初级开发者在学习编程过程中的一些建议，针对的对象主要是大学前期对编程感兴趣的新手。
选择一种能够快速见效的编程语言和平台
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 你需要选择一个既实用又喜欢的平台，让它保持您的兴趣，激励您快速扩展您的知识，最重要的是你要喜欢。
有的文章建议初学者首先学习C语言，因为它是必需的、基础的语言；但是有些人会让您先学习Lisp，因为它有坚实的理论并通过一种简单的方式教给你许多编程概念。
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这些都是好的建议，只不过思考问题的角度不同。但是对于“第一种”要学习的语言，我认为选择一种你喜欢而且能够激发潜力的语言是比较重要的。Lisp和C语言都很好，但在更高版本中更容易欣赏到这些特点。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 我建议您将VisualBasic.NET作为首先要学习的语言。微软提供了免费完整的IDE，你只要安装包文件就可以了。重要的是，平台里包含了创建桌面程序和web程序的快速可视化设计器，你不需要学习整个图形工具而只需要熟悉编程环境就可以了。学习的代价是非常小的，同时你会学到很多以后学习其他编程语言的编程技巧。从教学的角度考虑，VB.NET不是特别的令人讨厌的陋习，它简单有趣，让您在一周内就可以做出实用的程序。
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 另外一种语言选择是Python。这种语言和VB.NET有许多相似之处，有terser语法。选择Python的唯一原因是它有一个较小的内置库和不提供固定的、标准的创建桌面程序或基于网络的应用服务设计器和框架。您可以单独下载这些工具包，但它不是立即见效，没有设计器您将在启动和运行上花费不少时间。
参加论坛和在线社区
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 通过加入论坛你会学到很多东西，坚信知识就是力量，在发问、解答问题或者仅仅是参与讨论的过程中你都会获得他人的尊重。
不要陷入“政治”讨论
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 参加您喜欢的编程语言社区或论坛，不要陷入编程的宗教讨论。]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-07-09 06:46:00</pubDate>
		</item>
				<item>
		<title><![CDATA[数据结构面试大全]]></title>
		<link>http://blog.pfan.cn/andyhou/36286.html</link>
		<description><![CDATA[数据结构面试大全 












1.判断链表是否存在环型链表问题：判断一个链表是否存在环，例如下面这个链表就存在一个环：例如N1-&gt;N2-&gt;N3-&gt;N4-&gt;N5-&gt;N2就是一个有环的链表，环的开始结点是N5这里有一个比较简单的解法。设置两个指针p1，p2。每次循环p1向前走一步，p2向前走两步。直到p2碰到NULL指针或者两个指针相等结束循环。如果两个指针相等则说明存在环。 struct link {&nbsp;&nbsp;&nbsp;  int data;&nbsp;&nbsp;&nbsp;   link* next;}; bool IsLoop(link* head){&nbsp;&nbsp;&nbsp;   link* p1=head, *p2 = head;&nbsp;&nbsp;&nbsp;&nbsp;   if (head ==NULL || head-&gt;next ==NULL) &nbsp;&nbsp;&nbsp;&nbsp;   {&nbsp;&nbsp;&nbsp;&nbsp;   &nbsp;&nbsp;&nbsp;&nbsp;   return false;&nbsp;&nbsp;&nbsp;&nbsp;   }&nbsp;&nbsp;&nbsp;   do{&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;   p1= p1-&gt;next;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;   p2 = p2-&gt;next-&gt;next;&nbsp;&nbsp;&nbsp;   } while(p2 &amp;&amp; p2-&gt;next &amp;&amp; p1!=p2);&nbsp;&nbsp;&nbsp;&nbsp;   &nbsp;&nbsp;&nbsp;&nbsp;   if(p1 == p2)&nbsp;&nbsp;&nbsp;&nbsp;   &nbsp;&nbsp;&nbsp;&nbsp;   return true;&nbsp;&nbsp;&nbsp;&nbsp;   else&nbsp;&nbsp;&nbsp;&nbsp;   &nbsp;&nbsp;&nbsp;]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-06-26 16:54:00</pubDate>
		</item>
				<item>
		<title><![CDATA[谢霆锋正面详叙艳照门：这事件不是没有给我惊喜]]></title>
		<link>http://blog.pfan.cn/andyhou/36102.html</link>
		<description><![CDATA[“艳照门”风波发生四个多月来，张柏芝与谢霆锋的关系一直被媒体关注，两人更多次传出离婚、分居、形同陌路的消息。近日，谢霆锋在电影《证人》片场接受香港《明报周刊》的独家专访，首度正面详叙了他的家庭现状和对“艳照门”事件的看法。 张柏芝近期一直没有公开亮相，上周香港演艺界举行赈灾大汇演，她也没有出席。谢霆锋解释道：“(她)不是不想(来)，而是时机未到。”他透露，张柏芝也给灾区捐了款，但对于太太捐款多少，捐到哪里，谢霆锋一概不说，“做慈善事情不是要拿出来展示和比较的，自己做了多少自己知道就好了”。 今年的“艳照门”事件对谢霆锋及其家庭带来巨大的考验，对此，谢霆锋坦言，“(这)根本不是考验!从我的角度看，(这)在我的人生或者对于我家庭所发生过的事，算不了什么，它只不过是一些经历，而且是过去的经历。”谢霆锋正色地说，自己现在的家庭生活很幸福。“我和柏芝都是从十几岁入行挨到现在结婚生仔，上天给了我们一个这么健康的儿子，两个人的身体也很健康。这些对我来说已经是最幸福的了。” “我和她结婚前就很清楚她是什么人。”这是艳照事件发生后谢霆锋对太太张柏芝的态度。片场里，他又对这番话作了进一步的解释：“我们一早就知道有些什么东西在别人手上，其他人只是迟了知道罢了。因此对我来讲，这不算突发事件。不是没给我惊喜，而是惊喜不到我。我不讲太多，不代表我无知，只是觉得没必要讲。” 至于张柏芝现在的情况，谢霆锋说太太会以带儿子为主，“儿子现在还小，以一个妈妈的身份来讲，带小孩就是职责，当然以此为先。”自从去年8月生下Lucas后一直很少工作的张柏芝，其实也有剧本在手，不过霆锋说：“她还在考虑中。
&nbsp;
&nbsp;
&nbsp;
&nbsp;
我的空间]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-06-13 16:49:00</pubDate>
		</item>
				<item>
		<title><![CDATA[谁“逼迫”成龙脱光了衣服？]]></title>
		<link>http://blog.pfan.cn/andyhou/36099.html</link>
		<description><![CDATA[谁“逼迫”成龙脱光了衣服？
  
 http_imgload.jpg (18.23 KB)
2008-6-12 11:24文/波波小哥&nbsp; &nbsp;&nbsp; &nbsp;作为国际巨星，一般的活动很难请到成龙，但只要是成龙认为的正当合法的慈善活动，他甚至会不请自来。这次由湖南卫视《快乐大本营》联合中国少年儿童基金会举办的“童看奥运共享光明”公益活动，邀请的嘉宾名单中刚开始并没有成龙，但随香港一批实业家考察湖南经济的成龙，听闻后主动要求参加这个活动。有女士出资148万元获得与成龙合唱一曲的机会，而这148万元则全部捐献给了灾区。真的，成龙大哥不但有募捐经验，也很有号召力。在贵州的一次慈善节目中，成龙的衣裤每脱一件换取捐款就是40万元，最后被脱得只剩下内裤。

&nbsp; &nbsp;&nbsp; &nbsp; 成龙说：“为了慈善，我愿意做任何事情。”他是这么说的，也是这么做的。笔者不禁为成龙的善举所感动，那是真真切切的发自内心的钦佩。成龙不愧是娱乐圈的“老大哥”，四川巨震之后，他身先士卒，积极参加赈灾义演，并号召娱乐界人士积极募捐善款，如此的大爱怎能与言语来表达？在成龙眼里，现在一切都显得不再重要，灾区人民更需要关爱，更需要鼓励。

&nbsp; &nbsp;&nbsp; &nbsp;为娱乐圈致敬！我们为他们在国难时刻的众志成城而欢呼感动。那些说他们“炒作”、“作秀”的人们，请停止你们无聊的言论吧，难道你们没有看到明星们的真心，爱心和诚心吗？只要能为灾区人民多做点事，多出点力，张扬一点，高调一点都是可以理解的，我们不应紧抓不放，在审视别人的同时，我们同时需要内心的反省。请给明星慈善多留些空间吧！

&nbsp; &nbsp;&nbsp; &nbsp;成龙大哥可以为慈善募捐脱的只剩下内裤，这是怎样的一种慷慨大爱？爱还将继续，因为灾区重建工作刚刚起步；爱还将发扬，因为四川巨震弥合修补了我们的人性，由此会变的更加富有爱心。爱是无价的，需要持续，更需要发扬！应该得到全国人民的尊敬和爱戴！
&nbsp;
我的空间]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-06-13 16:46:00</pubDate>
		</item>
				<item>
		<title><![CDATA[如何花少的时间学习更多的知识]]></title>
		<link>http://blog.pfan.cn/andyhou/35447.html</link>
		<description><![CDATA[花时间学习不见得就是真正的学习。因为你的学习方法一开始就是错的话，那么花再多的时间在学习上也是无济于事。所以你得看看这篇文章，如何花少量的时间却仍然学习到更多的知识。

知识整合法 
聪明人不仅是学习成绩优异，更重要的是有独到的学习方法。不像大多数学生凭记忆来求取好成绩，聪明的学生追求的是把知识串联起来构成一幅大的画面。这也就是我所说的知识整合法。
知识整合法与机械式学习截然相反，它讲究的是思想的连接而不是死记硬背每个知识点。比起让几何，代数和历史这些知识点在脑子里各据一处，你应该有意识的将这些知识联系到一起，从而构成一幅大的知识图。
额外的学习表明你没有用到知识整合法，而且不理解初学的知识。如果你能恰到好处的将知识点连接起来，那么学习就只是一次简短的对知识的更新罢了。

优化你的学习习惯 
知识整合法不同于brainstorming或mind-mapping的技能，它从根本上改变了你对学习过程和吸收知识的理解。也就是说没我们不能依靠以往简单的十步骤来精通这种学习方法。
但是有一些工具能助你一臂之力，使你的学习习惯向具有整体性发展：
1. 让知识鲜活起来
你可能已经听过这种方法了。它指的是动员身体上所有的感官，知觉，用它们来传导知识。研究显示，当人们处在情绪饱满的状态下时，能接收更多鲜活、生动的信息。将知觉与想象灌入平淡的知识能让它们显得更加真实，从而方便我们理解接纳。还记得小时候用掰指头的方法来记数字吗？不妨在现在的学习中也试试这种方法吧。
2. 托物陈喻
知识整合法的核心就是将事物联系在一起。比喻本是一种文学手法用于联系两件看似不相干的个体到一起。这与知识整合法的核心不谋而合。用比喻将复杂的知识简化，以达到言简义丰的效用。
3. 十岁法则
用你对10岁小孩讲解知识的方式对自己解释知识。当然了，这种方法可能在你学医或者学习如何将神经系统运用到电脑智能中并不适用。不过重点是你要试着剥去那层复杂的外壳，让知识以最原始，最简单的形式呈现在我们面前。
4. “回到过去”
把课本拿开，开始随意的想一个概念，然后由它联想到之前学的某个概念，将这种思维方式持续下去直到你把很多的概念联系在一起。例如古普塔王朝让你想到了古希腊，进而联想到苏格拉底，再进一步想到孔夫子……
5. 漏洞扫描
仔细浏览课本，如果在某处发生记忆漏洞或对内容的不确定，一定]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-05-25 22:33:00</pubDate>
		</item>
				<item>
		<title><![CDATA[爆笑&nbsp;一地震幸存者被救出后痛骂地震]]></title>
		<link>http://blog.pfan.cn/andyhou/35388.html</link>
		<description><![CDATA[&nbsp;]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-05-24 17:26:00</pubDate>
		</item>
				<item>
		<title><![CDATA[四路花语]]></title>
		<link>http://blog.pfan.cn/andyhou/35387.html</link>
		<description><![CDATA[人生是一条汹涌澎湃的河流。生，是它的上游，死，是它的下游。
如果你做不了一艘不沉的船，或者做不了一面不落的帆，那你就老老实实的做一名水手。
知道自己能够做些什么，这说明你在不断的成长。知道自己不能够做些什么，这说明你在不断成熟。
当你对着别人的背影说三道四的时候，恰恰说明你在正跟在他的身后。木头一旦做成了斧柄，就会去砍削它的同类。
人在白天沉思，往往能换来夜晚的沉睡。
悲观者说，星星愈亮，说明夜愈黑。乐观者说，夜色愈黑，星星愈亮。
再直的筷子，插进水里也是弯的。
一阵风吹过，向下飘坠的大多是落叶，向上飞腾的大多是灰尘。
有痛的感觉，证明你还活着。
流泪并不可怜，可怜的是你流不眼泪。
最有资格说自己有一肚子墨水的，其实是那些普普通通的钢笔。
人在两种情况下没有影子：一是在黑暗中藏匿，一是在太阳底下躺着。
迁就别人是一种美德，迁就自己却是一种过错。
&nbsp;理想是一枚美丽的邮票，为了目的地的顺利抵达，它必须接受生活邮戳的敲打。
别人把你绊倒在地并不是一种悲哀，真正的悲哀是被绊倒之后拒绝爬起来继续奔跑。
新生事物刚问世，人们的表情往往可分为两种：一种是睁大眼睛，显的非常好奇；一种是眯着眼睛，显的特别冷漠。
&nbsp;&nbsp;&nbsp;]]></description>
		<author><![CDATA[hackhou]]></author>
		<pubDate>2008-05-24 17:19:00</pubDate>
		</item>
		</channel>
</rss>