例如:
static void w_long(long x, WFILE *p)
{
w_byte((char)( x & 0xff), p);
w_byte((char)((x>> 8) & 0xff), p);
w_byte((char)((x>>16) & 0xff), p);
w_byte((char)((x>>24) & 0xff), p);
}
为什么pyc文件不可读,常量文本/字符串在哪里?
& 0xff
从数字中获取最后 8 位(或一个字节)。这样可以确保一次只向文件写入一个字节(在这种情况下,用于小端字节序存储)。
0xff
1111 1111
二进制。使用它执行逻辑and
将打开x
1
且位于最后 8 位内的所有位。
例如:
x = 0010 0100 1001 0111
&
1111 1111
-------------------
0000 0000 1001 0111