不同语言中的运算符比较
更新:2007 年 11 月
本主题列出 Visual Basic、C++、C#、JScript 和 Visual FoxPro 的运算符。
有关这种语言中的运算符的详细信息 |
请参见 |
---|---|
Visual Basic |
|
C++ |
|
C# |
|
JScript |
不同语言中的运算符的比较
|
Visual Basic |
C++ |
C# |
JScript |
Visual FoxPro |
---|---|---|---|---|---|
加法 |
|
|
|
|
|
加法 |
+ |
+ |
+ |
+ |
+ |
减法 |
- |
- |
- |
- |
- |
乘法 |
|
|
|
|
|
乘法 |
* |
* |
* |
* |
* |
除法 |
/ |
/ |
/ |
/ |
/ |
整数除法 |
\ |
/1 |
/1 |
|
|
模数除法(仅返回余数) |
Mod(也可以处理浮点) |
% |
% |
%(也可以处理浮点) |
% Mod |
幂 |
^ |
n/a |
n/a |
n/a |
^ ** |
赋值 |
|
|
|
|
|
赋值 |
= |
= |
= |
= |
= |
加法 |
+= |
+= |
+= |
+= |
+ |
减法 |
-= |
-= |
-= |
-= |
- |
乘法 |
*= |
*= |
*= |
*= |
* |
除法 |
/= |
/= |
/= |
/= |
/ |
整数除法 |
\= |
n/a |
/=1 |
n/a |
n/a |
字符串串联 |
&= |
+= |
+= |
+= |
+ - $ |
模数除法 |
n/a |
%= |
%= |
%= |
% |
左移 |
<<= |
<<= |
<<= |
<<= |
BITLSHIFT( ) |
右移 |
>>= |
>>= |
>>= |
>>= |
BITRSHIFT( ) |
按位“与” |
n/a |
&= |
&= |
&= |
BITAND( ) |
按位“异或” |
n/a |
^= |
^= |
^= |
BITXOR( ) |
按位“与或” |
n/a |
|= |
|= |
|= |
BITOR( ) |
null 合并 |
n/a |
n/a |
?? |
n/a |
n/a |
关系式与等式 |
|
|
|
|
|
小于 |
< |
< |
< |
< |
< |
小于或等于 |
<= |
<= |
<= |
<= |
<= |
大于 |
> |
> |
> |
> |
> |
大于或等于 |
>= |
>= |
>= |
>= |
>= |
相等 |
= |
== |
== |
== |
= |
不相等 |
<> |
!= |
!= |
!= |
<> # != |
引用变量比较 |
Is IsNot |
n/a |
== |
== |
COMPOBJ( ) |
引用类型比较 |
TypeOf x Is Class1 |
n/a |
x is Class1(另请参见 as 和 typeof) |
instanceof |
n/a |
字符串比较 |
StrComp( ) |
(比较和连接字符串的函数) |
== |
== |
= |
CString 串联 |
& |
|
+ |
+ |
+ |
短路布尔 AND |
AndAlso |
&& |
&& |
&& |
AND .AND. |
短路布尔 OR |
OrElse |
|| |
|| |
|| |
n/a |
移位 |
|
|
|
|
|
左移 |
<< |
<< |
<< |
<< |
n/a |
右移 |
>> |
>> |
>> |
>> >>> |
n/a |
范围解析 |
|
|
|
|
|
范围解析 |
. MyBase MyClass |
:: |
. base |
n/a |
:: |
后缀2 |
|
|
|
|
|
数组元素 |
( ) |
[ ] |
[ ] |
[ ] |
[ ] ( ) |
函数调用 |
( ) |
( ) |
( ) |
( ) |
( ) |
类型强制转换或转换 |
CInt CDbl ... CType |
(类型) |
(类型) |
type() |
n/a |
成员选择 |
. ! |
. -> |
. |
. |
. |
后缀递增 |
n/a |
++ |
++ |
++ |
n/a |
后缀递减 |
n/a |
-- |
-- |
-- |
n/a |
一元3 |
|
|
|
|
|
间接寻址 |
n/a |
* |
*(仅用于不安全模式) |
n/a |
n/a |
寻址 |
AddressOf |
& |
&(仅用于不安全模式;另请参见 fixed) |
n/a |
n/a |
逻辑 NOT |
Not |
! |
! |
! |
! NOT .NOT. |
1 的补码 |
Not |
~ |
~ |
~ |
BITNOT( ) |
前缀递增 |
n/a |
++ |
++ |
++ |
n/a |
前缀递减 |
n/a |
-- |
-- |
-- |
n/a |
类型大小 |
n/a |
sizeof |
sizeof |
n/a |
n/a |
逗号 |
n/a |
, |
n/a |
, |
n/a |
按位操作符 |
|
|
|
|
|
按位“与” |
And |
& |
& |
& |
BITAND( ) |
按位“异或” |
Xor |
^ |
^ |
^ |
BITXOR( ) |
按位“与或” |
Or |
| |
| |
| |
BITOR( ) |
逻辑运算 |
|
|
|
|
|
逻辑“与” |
And |
& |
& |
&& |
AND .AND. |
逻辑“或” |
Or |
| |
| |
|| |
OR .OR. |
条件运算 |
|
|
|
|
|
三元条件运算 |
IIf( ) |
?: |
?: |
?: |
n/a |
二元或三元条件运算 |
If( ) |
||||
指向成员的指针 |
|
|
|
|
|
指向成员的指针 |
n/a |
.* -> |
. (仅用于不安全模式) |
n/a |
n/a |
引用 |
|
|
|
|
|
引用 |
n/a |
& |
n/a(使用引用类型) |
n/a |
@ |
1.根据操作数,除法运算符被重载以便处理整数除法和浮点除法。
2.后缀运算符在表达式计算中具有最高的优先级。
3.一元运算符出现在操作数前,并按照从右到左的顺序关联。