BitReset
获取指定位清零的整数值。
语法
#define
BitReset
(
value
,
bit_number
) ((
value
)
And
Not
(
Cast
(
TypeOf
(
Value
), 1)
Shl
(
bit_number
)))
用法
result
=
BitReset
(
value
,
bit_number
)
参数
value
整数值。
bit_number
该位的索引要清除。
返回值
返回指定位清零的整数值。
说明
该宏将扩展为整数
value
的副本,并指定
bit_number
已清除(至
off
或“
0
”)。表现为`
value
And
Not
(1
Shl
bit_number
)
`。
bit_number
的值的有效范围取决于`
TypeOf
(
value
)
`的大小,以'
0
`通过`
SizeOf
(
value
) * 8 - 1
`。有关标准数据类型及其大小的表格,请参阅
Standard Datatype Limits
.
例子
Print
BitReset
(
5
,
0
)
Print
Hex
(
BitReset
(
&h8000000000000001
,
63
))
将产生输出:
4 1
方言差异
-lang qb
方言不可用,除非使用别名
__Bitreset
引用。
与QB差别
新的FreeBASIC。
参考
Bit
BitSet