摘要: glibc2.7中的strlen函数没有使用简单的逐位测试null的方法计算字符串的长度,而是通过一个magic number,每四位一组测试一次的方法进行测试。magic number为:0x7efefeff。二进制展开后为:01111110 11111110 11111110 11111111其实就是一个第8,16,14,31位为0,其余都是1的整数。这些为0的位称为“洞(hole... 阅读全文
posted @ 2009-08-19 12:53 kernel@hcy 阅读(1597) 评论(1) 推荐(0) 编辑