在 C++ 中使用 <<++ 和 >>++ 运算符
Use of <<++ and >>++ operators in C++
我在`C++中多次遇到<<++
和>>++
运算符,但我不明白它们是什么。这些运算符的具体含义和用途是什么,它们与右移和左移运算符有什么区别?
两种情况下都有两个单独的运算符:左移(<<
)、右移(>>
)和递增运算符(++
).
您可以重写以下内容:
a >>++ b
如:
a >> (++b)
C++ 编译器忽略空格,除非在某些情况下,例如字符串文字。
<<++
和 >>++
实际上只是一个移位运算符 <<
或 >>
,后跟一个增量运算符 ++
.
考虑这段代码:
a <<++ b
等同于
a<<++b
因为在这个上下文中忽略了空格,然后相当于
a << ++b
(a
左移一个预递增的 b
)
a << (++b)
由于运算符优先级。位移运算符的优先级低于递增。
我在`C++中多次遇到<<++
和>>++
运算符,但我不明白它们是什么。这些运算符的具体含义和用途是什么,它们与右移和左移运算符有什么区别?
两种情况下都有两个单独的运算符:左移(<<
)、右移(>>
)和递增运算符(++
).
您可以重写以下内容:
a >>++ b
如:
a >> (++b)
C++ 编译器忽略空格,除非在某些情况下,例如字符串文字。
<<++
和 >>++
实际上只是一个移位运算符 <<
或 >>
,后跟一个增量运算符 ++
.
考虑这段代码:
a <<++ b
等同于a<<++b
因为在这个上下文中忽略了空格,然后相当于a << ++b
(a
左移一个预递增的b
)a << (++b)
由于运算符优先级。位移运算符的优先级低于递增。