m++
与++
m的区别
这里来补一个基础,关于对
int a[m++]=1;
这个代码理解错误,发现的问题,即对m 与 m的不熟悉。
- m++ 是后置自增运算符
先使用m原来的值进行表达式的其他运算,然后再将m的值加1 - ++m 是前置自增运算符
先将m的值加1,然后再使用m的值进行表达式的其他运算
int a[m++]=1;
等价于
int a[m]=1;
m++;
下面再来个完整的代码表达这个过程
#include <iostream>
using namespace std;
int main()
{
int jun1 = 5;
int willow = jun1++;
cout << "jun =" << jun1 << endl << "willow =" << willow << endl;
int jun2 = 5;
int liu = ++jun2;
cout << "jun =" << jun2 << endl << "liu =" << liu << endl;
return 0;
}
这时猜猜输出什么
jun =6
willow =5
jun =6
liu =6
willow 不等于 liu ,因为 willow 是先赋值再 jun 加一,而 liu 是先 jun 加一再赋值给 liu
这里记录一下第一次学习笔记,感谢NoneIceland一直给的鼓励,希望在持续的学习后,也能写出自己的东西!