《斗破CPP》第叁章将会分成上中下三部分分享给大家,(上)偏向于讲述循环;(中)讲1个中级难度的运算符;(下)偏向于讲解具有强大功能的语句以及控制符。不管有基础还是没基础的小伙伴,都可以重点看看(上)后半部分、(中)前半部分、(下)后半部分小总结。
目录
递增运算符和递减运算符
我们在上一篇chap0302运用到了 -- 运算符。
后置递增(减)运算符
我们以后置递减运算符有关的程序作为本篇开端:
//chap0308
#include <iostream>
using namespace std;
int main()
{
int x;
cout << "倒数。\n";
do {
cout << "正整数值:";
cin >> x;
} while (x <= 0);
while (x >= 0)
cout << x-- << endl; // 显示x的值并递减
}
对表达式x--进行求值,得到的是递增前的值。如示例,x的值为5,则cout << x-- << endl; 显示的是递增前的值5(当然,显示之后x的值将递减为4)。后置递增运算符的操作跟后置递减运算符一样就不多说了。
前置递增(减)运算符
对表达式--x进行求值,得到的是递增前的值。如示例,x的值为4,则cout << --x << endl; 显示的是递增前的值5(当然,显示之后x的值也为4)。
//chap0309
#include <iostream>
using namespace std;
int main()
{
int x;
cout << "倒数。\n";
do {
cout << "正整数值:";
cin >> x;
} while (x <= 0);
while (x >= 0)
cout << --x << endl; // 显示x的值并递减
}
总结一下:
x++ | 将x的值加1,最终生成的是增加前的值 |
x - - | 将x的值减1,最终生成的是减小前的值 |
++x | 将x的值加1,最终生成的是增加后的值。 |
- -x | 将x的值减1,最终生成的是减小后的值。 |
在for循环中作为条件的前置与后置
我们来看看下面2个例子,其实它们的作用是完全一样的,跟前置后置没有啥太大关系。
for (int i = 0;i < 10;i++)
for (int i = 0;i < 10;++i)
左值和右值
终于来到本篇博客的主要内容啦。在赋值表达式中,既可以放在左边也可以放在右边的表达式称为左值表达式,不可以放在左边的表达式称为右值表达式。例如,变量n是左值表达式,而使用二元 + 运算符进行加法运算的n + 2是右值表达式,不可以放在左边。我们通过代码来理解:
//chap0309
#include <iostream>
using namespace std;
int main()
{
int x = 0;
++x = 5; // true:前置形式可以放在左边
cout << "x的值是" << x << "。\n";
x++ = 10; // false:因为后置形式不可以放在左边
cout << "x的值是" << x << "。\n";
}
我们ctrl+f5一下会发现编译错误,无法运行。通过这个chap0309 我们知道使用前置的++或--运算符的表达式是左值表达式,使用后置的++或--运算符的表达式是右值表达式。
未完待续
很感激阅读到这里的你,《斗破CPP》的精彩并不止于这些,学有余力的小伙伴可以看看下面这些博客,都是有着极多的技巧与干货❤!
《斗破CPP》 第壹章 ---- 初窥CPP_施律.的博客-优快云博客
《斗破CPP》 第贰章(上) ---- 初识分支句_施律.的博客-优快云博客
《斗破CPP》 第贰章(下) ---- 拿捏运算符与标识符_施律.的博客-优快云博客
关于时间的函数,让你成为掌控时间的强者:(极力推荐!)关于时间的函数,让你成为掌控时间的强者_施律.的博客-优快云博客
如果觉得本篇博客对正在学习编程的你有帮助的话,请给施律.多一点的支持与关注!未来的一段时间里施律.将和小伙伴们一起斗破CPP,希望下次的我能为大家奉上更好的博客内容,也希望下次的博客有你!