c++ - C 和 C++ 中的几个一元运算符

标签 c++ c

使用像这样的表达式是否符合标准

int i = 1;
+-+-+i;

i变量的符号是如何确定的?

最佳答案

是的。一元 +- 从右到左关联,所以表达式被解析为

+(-(+(-(+i))));

结果为 1

请注意,这些可以重载,因此对于用户定义的类型,答案可能不同。

关于c++ - C 和 C++ 中的几个一元运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12960690/

相关文章:

c++ - 内联所有虚函数的模板类

c++ - 为什么当对象的构造函数抛出异常时不调用对象的析构函数?

c++ - 使用 G++ 而不是 LLVM 编译时代码速度明显变慢

c++ - 在 C++ 中删除对象会删除已删除对象中的对象吗?

java - 在控制面板中查找图标名称

c - 先前的隐式声明 : (casting int to unsigned long)

c++ - 访问程序中的符号表以打印结构的字段名称

c++ - GLSL Sphere - 射线相交几何解决方案

C 将 float 转换为 int 数组

c - 为什么我的 ELF 二进制文件中 LOAD 段的 VirtAddr 显示为 0x0000000000000000?