1?
18 運算符-算術運算符-遞增遞減_嗶哩嗶哩_bilibili
2 .1
#include <iostream>
using namespace std;
int main() {int a = 0;int b = 0;a++ ;++b ;cout << "a++ " ?<< a << endl;cout << "++b " ?<< b << endl;}
輸出
a++ 1++b 1
2.2
#include <iostream>
using namespace std;
int main() {int a = 0;int b = 0;cout << "a++ " << a++ << endl;cout << "++b " << ++b << endl;}
輸出
a++ 0++b 1
結論: 后置++ 本行變量使用舊值 下行變量值改變 (含有 a++行 值為舊值)
? ? ? ? 前置++? 值立馬變
3 驗證
#include <iostream>
using namespace std;
int main() {int a = 0;int b = 0;cout << "a++ " << a++ << endl;cout << "++b " << ++b << endl;cout << "a++ " << a << endl;}
輸出
a++ 0
++b 1
a++ 1
4 a++ 復制給 變量b: 變量b是 a的舊值, a下行值改變
#include <iostream>
using namespace std;
int main() {int a = 0;int b = 0;b = a++ ;cout << "b " << b << endl;cout << "a " << a << endl;cout << "b " << b << endl;}
輸出:
b 0
a 1
b 0