预增量运算符:预增量运算符用于在表达式中使用变量之前对变量的值进行增量。在Pre-Increment中,值首先递增,然后在表达式内部使用。
句法:
a = ++x;
在这里,如果’x’的值为10,则’a’的值为11,因为’x’的值在表达式中使用之前已被修改。
CPP
// CPP program to demonstrate pre increment
// operator.
#include
using namespace std;
int main()
{
int x = 10, a;
a = ++x;
cout << "Pre Increment Operation";
// Value of a will change
cout << "\na = " << a;
// Value of x change before execution of a=++x;
cout << "\nx = " << x;
return 0;
}
CPP
// CPP program to demonstrate pre increment
// operator.
#include
using namespace std;
int main()
{
int x = 10, a;
a = x++;
cout << "Post Increment Operation";
// Value of a will not change
cout << "\na = " << a;
// Value of x change after execution of a=x++;
cout << "\nx = " << x;
return 0;
}
C++
#include
using namespace std;
int main()
{
int x = 10;
cout << "Value of x before post-incrementing";
cout << "\nx = " << x;
x = x++;
cout << "\nValue of x after post-incrementing";
// Value of a will not change
cout << "\nx = " << x;
return 0;
}
输出 :
Pre Increment Operation
a = 11
x = 11
后增量运算符:后增量运算符用于在完全执行使用后增量的表达式之后,对变量的值进行增量。在后递增中,值首先在表达式中使用,然后递增。
句法:
a = x++;
在这里,假设’x’的值为10,则变量’b’的值为10,因为使用了’x’的旧值。
CPP
// CPP program to demonstrate pre increment
// operator.
#include
using namespace std;
int main()
{
int x = 10, a;
a = x++;
cout << "Post Increment Operation";
// Value of a will not change
cout << "\na = " << a;
// Value of x change after execution of a=x++;
cout << "\nx = " << x;
return 0;
}
输出 :
Post Increment Operation
a = 10
x = 11
后增值运算符的特殊情况:如果我们将后增值分配给同一变量,则该变量的值将不会递增,即它将保持与以前相同。
句法:
a = a++;
在此,如果“ x”的值为10,则“ a”的值为10,因为将“ x”的值分配给后递增的值“ x”。
C++
#include
using namespace std;
int main()
{
int x = 10;
cout << "Value of x before post-incrementing";
cout << "\nx = " << x;
x = x++;
cout << "\nValue of x after post-incrementing";
// Value of a will not change
cout << "\nx = " << x;
return 0;
}
输出:
Value of x before post-incrementing
x = 10
Value of x after post-incrementing
x = 10
此特殊情况仅适用于后递增和后递减运算符,而在这种情况下,前递增和前递减运算符正常工作。
一起评估发布前和发布前增量
后缀++的优先级大于前缀++,并且它们的关联性也不同。前缀++的关联性从右到左,而后缀++的关联性从左到右。
- 后缀++的关联性从左到右
- 前缀++的关联性从右到左
你也许也喜欢:
- https://www.geeksforgeeks.org/difference-between-pp-and-p/
- https://www.geeksforgeeks.org/c-operator-precedence-associativity/
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程” 。