Skip to content

Operator AND=(按位与赋值)


执行按位与(合取)并将结果赋给变量。

语法

declare operator And= ( byref lhs as T1, byref rhs as T2 )

用法

lhs And= rhs

参数

lhs

要赋值的变量。

T1

任何数值或布尔类型。

rhs

lhs 执行按位与(合取)的值。

T2

任何数值或布尔类型。

描述

此运算符执行按位与并将结果赋给变量(对于布尔值转换为整数,false 或 true 的布尔值变为 0 或 -1 的整数值)。功能等价于:

lhs = lhs and rhs

And= 比较操作数 lhsrhs 的每个位,如果两个位都是 1,则将第一个操作数 lhs 中对应的位设置为 1,否则设置为 0。

And= 不能在条件表达式中使用。

此运算符可以使用适当的语法作为成员 Operator 为用户定义类型重载。

注意:类似于运算符 '=[>]'(赋值),也可以使用替代符号 'And=>'。

示例

start GeSHi

vb
' Using the AND= operator on two numeric values
Dim As UByte numeric_value1, numeric_value2
numeric_value1 = 15 '' 00001111
numeric_value2 = 30 '' 00011110

numeric_value1 And= numeric_value2

'' Result =  14  =     00001110
Print numeric_value1
Sleep

end GeSHi

方言差异

  • -lang qb 方言中,此运算符不能被重载。

与 QB 的差异

  • FreeBASIC 新增功能

参见

  • And

返回 目录

基于 FreeBASIC 官方文档翻译 如有侵权请联系我们删除
FreeBASIC 是开源项目,与微软公司无隶属关系