序列点
2008年7月17日 阅读(364)
那么,所谓的序列点是什么意思呢?
序列点是一个时间点(在整个表达式全部计算完毕之后或在 ||、 &&、 ? : 或逗号 运算符处, 或在函数调用之前), 此刻尘埃落定,所有的副作用都已确保结束。 ANSI/ISO C 标准这样描述:
在上一个和下一个序列点之间,一个对象所保存的值至多只能被表达式的计算修改一次。而且前一个值只能用于决定将要保存的值。
银河里的星星
一个整形数组,长为n,元素范围为1~(n-1),则这个数组内至少有一个数字出现多次,现在要求用O(n)时间,O(1)空间找出一个出现多次的数。
以下为原文:
here’s one I got asked which kicked my butt. Write a function that takes in an array of n ints from 1…n-1. For example, an array of 4 numbers which all have values of 1, 2, or 3. There will obviously be at least one duplicate number. Return one of the duplicates (EASY!) – Now do this in order n, without allocating ANY new memory (no hash table or anything).. (Note: I did figure out a solution to this, but the interview didn’t seem to like it very much but whatever).. read more
C
puzzles The expected output of the following
C program is to print the elements in the array. But when actually run, it doesn’t do so. #include<stdio.h>
#define TOTAL_ELEMENTS (
sizeof(array)
/
sizeof(array[0]))
int array[]
= {23,34,12,17,204,99,16};
int main()
{
int d;
for(d
=-1;d
<= (TOTAL_ELEMENTS
–2);d
++)
printf("%d\n",array[d
+1]); read more
转载请注明作者:phylips@bmy 出处:http://duanple.blog.163.com/blog/static/70971767200842415342426/
本文首先对c语言的一些问题进行了探讨,如果你觉得你的c学的很好了,不妨看看这些例子检验一下你是否真的懂了它?然后就语言中的一些未定义细节进行了列举,通过这你可以写出移植性更好的c程序,对一些编程的惯用法进行了提示,帮助你写出更好的c程序。最后列举了c语言的一些著名的bug,在这里你会发现小小的bug所引发的历史上著名的灾难性事故。最后的附录里将是一些著名的c puzzles,原文出自国外。 read more
好久没写搜索引擎了,准备本周写完
还有三篇,索引系统,查询系统外加一篇结案陈词
最近一直忙着看书
开始看没啥感觉,看多了才发现书中自有颜如玉啊。。。
看书真好,有点出世的感觉。
前面的一篇已经将网页的获取这一步完成了,下面要进行的一步便是对这些网页的分析以完成索引建立。当然,有的书里把分析这一步与索引结合到一块,也是有道理的,因为分析只是一个预处理的过程,其目的便是为后面的索引服务。不过呢,我还是把它单独列出来吧,毕竟后面的索引是最为复杂的一个,估计要花很多的文字去介绍,为减少复杂度,还是首先把分析这一步介绍完毕。 read more
受不了了,前面的一篇还没给我审核通过,唉,网易的效率太低了,严重影响了我对网易blog的感情。。。
没办法,只好折中一下吧,放到以前在sina的blog上了,不过sina的网速也够恶心的。。。