C++的运算

来源:百度知道 编辑:UC知道 时间:2024/09/22 11:34:32
#include <iostream>
using namespace std;
void main()
{int a,b,c;
a=6;b=c=4;
if (a!=b)
if (a!=c)
if (a)
cout <<(a-->2);
else a++;
else a+=a;
cout <<a;
}

a-->2指的是什么
答案怎么会是:15
我是初学者,忘大家给我个好的解释过程;

void main()
{int a,b,c;
a=6;b=c=4;
if (a!=b)
if (a!=c)
if (a) //这三个条件都成立 执行后面的cout
cout <<(a-->2); //输出,a--先引用再自减1!6>2为真输出1
else a++;
else a+=a; //这两个else和上面的两个if配套,由于已经执行了if 跳过这俩else
cout <<a; //此时 由于a已经被自减1,所以a=5
} //综上 看起来就是 15了