摘要: 逻辑与关系运算符if (flags & FLAG != 0) {...}这类错误以前也犯过,因为!=的优先级比&要高所以实际上是这样的if (flags & (FLAG != 0))可以把&、|也作为一种逻辑操作,而逻辑操作符的优先级总是比比较操作符、运算操作符来得低。可以这样想,首先进行了一些运算,然后才比较他们的值,通过比较有了布尔值,最后就进行逻辑与、或操作了。位移与算术运算符上面的错误可能会在不清楚的情况下使用括号,但是下面的情况则很难会觉察到,记得好几次都是莫名其妙的位移操作出现过问题。res = hi Element selection throug 阅读全文
posted @ 2014-04-12 15:59 卖程序的小歪 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 有的时候为了做些读写测试需要一些指定大小的文件,这时候可以通过下面的方法得到dd if=/dev/urandom of=rnd_tmp_file bs=1M count=100使用dd工具以Linux的urandom设备为输入(if=/dev/urandom),生成一个名为rnd_tmp_file(of=rnd_tmp_file)约100MB(1MB * 100)的随机文件当然也可以使用/dev/random作为输入,据说有更好的随机性,但是速度奇慢,反正随便生成文件不是用于重要的加密过程,前者早已可以满足要求了。如果想要更快的速度生成一个文件可以将/dev/zero作为输入,但是这时生成的文 阅读全文
posted @ 2014-04-12 14:40 卖程序的小歪 阅读(1679) 评论(0) 推荐(0) 编辑
摘要: 1 class Solution { 2 public: 3 bool isValid(string s) { 4 char open[] = {'(', '[', '{'}; 5 char close[]= {')', ']', '}'}; 6 ... 阅读全文
posted @ 2014-04-12 10:02 卖程序的小歪 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 1 class Solution { 2 public: 3 vector > subsets(vector &S) { 4 sort(S.begin(), S.end()); 5 vector > res; 6 vector path; 7... 阅读全文
posted @ 2014-04-12 09:27 卖程序的小歪 阅读(153) 评论(0) 推荐(0) 编辑