
acm必备
utobe67
这个作者很懒,什么都没留下…
展开
-
神奇的位运算
位运算应用口诀 清零取反要用与,某位置一可用或 若要取反和交换,轻轻松松用异或 移位运算 要点 1 它们都是双目运算符,两个运算分量都是整形,结果也是整形。 2 " 3 ">>"右移:右边的位被挤掉。对于左边移出的空位,如果是正数则空位补0,若为负数,可能补0或补1,这取决于所用的计算机系统。 4 ">>>"运算符,右边的位被挤掉,对于左边移出的转载 2013-07-14 14:45:49 · 900 阅读 · 0 评论 -
浮点数陷阱
0.1在计算机中不能精确的表示,在转换为二进制的时候是死循环,具体转换你可以参考进制转换相关的知识。 如果步长,就是每次加的那个值是一个不能精确表示的值,那就不会精确的等于10,会出现死循环。 如果是一个可以精确表示的,比如0.5, 0.125等,则不会出现死循环。#include int main() { double i; for(i=0;i!=10;i+=0.125) print原创 2013-04-30 22:00:06 · 967 阅读 · 0 评论 -
介绍四种GCC内置位运算函数
介绍四种GCC内置位运算函数 张文泰 posted @ 2010年1月11日 01:27 in Code and Develop with tags 位运算 , 4100 阅读 int __builtin_ffs (unsigned int x) 返回x的最后一位1的是从后向前第几位,比如7368(1110011001000)返回4。int __builtin_clz (转载 2014-09-11 16:36:58 · 1001 阅读 · 0 评论