
C/C++
文章平均质量分 63
一只特立独行在风口上的猫
这个作者很懒,什么都没留下…
展开
-
C/C++校招笔试面试经典题目总结二
接着昨天的总结继续。。。题目11:#define DOUBLE(x) x+x ,i = 5*DOUBLE(5)。 i 是多少?解答:这个题目和题目6是同一个题型,这里并不会出现i=5*(5+5)=50的结果,因为题目只是使用了x+x来替代DOUBLE(x),注意x+x并没有使用括弧,所以结果应该为:i=5*x+x=5*5+5=30。所以在写宏定义的时候一定要谨慎地将宏定义中的“参数”和原创 2015-07-09 16:53:24 · 1432 阅读 · 0 评论 -
C/C++校招笔试面试经典题目总结三
题目21:求下面函数的返回值,输入x=9999;(微软)int func(x){ int countx = 0; while(x) { countx ++; x = x&(x-1); } return countx;} 解答:其实这个程序的意思就是求9999的二进制中有多少个1(别问我为什么知道的,可以查看剑指of原创 2015-07-10 16:12:25 · 1865 阅读 · 0 评论 -
不使用*、/、+、-、%操作符求一个数的1/3[算法]
今天公司户外素质拓展,太累了,就提一个算法问题吧,这个问题曾经是在国外技术问答网站stackoverflow的一个热门问题。你能给出几种解答方法?题目:在不使用*、/、+、-、%操作符的情况下,如何求一个数的1/3?解答:方法可以参看http://www.youkuaiyun.com/article/2012-08-07/2808268-divide-a-number-by-3-wit原创 2015-07-12 20:20:02 · 605 阅读 · 0 评论 -
C/C++校招笔试面试经典题目总结九
题目77:struct A { char t:4; char k:4; unsigned short i:8; unsigned long m; } sizeof(A)=?(不考虑边界对齐)解析:关于这道题的答案网上有两种说法。一种说法是答案为8,另一种说法认为答案是7。仔细看这道题,与普通的求结构体长度的题目不同之处在于引入了类似char t:4这种类型,那么这到底是什么呢?原创 2015-07-29 17:22:15 · 2156 阅读 · 0 评论 -
字符串匹配的KMP算法
KMP算法不太容易理解,网上有很多解释,但读起来都很费劲。直到读到Jake Boxer的文章,我才真正理解这种算法。下面,我用自己的语言,试图写一篇比较好懂的KMP算法解释。1.举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"?首先,字符串"BBC ABCDAB ABCDABCDABDE"的第一个转载 2015-08-24 23:03:07 · 568 阅读 · 0 评论