c++萌新 c++计算机不懂算负数?

例如
-1.1-2.2+-3.3
答案: =-2.2
但正确的应该是-6.6才对。
请大佬指教。
#include
using namespace std;

int main4()
{
double a, b, c;
char op;
cin >> a >> op >> b >> op >> c;
switch (op)
{
case '+': cout << (a) + (b) + (c) << endl; break;
case '-': cout << (a) - (b) - (c) << endl; break;
case 'x': cout << (a) * (b) * (c) << endl; break;
case '/': cout << (a) / (b) / (c) << endl; break;

default:cout << "\n";
    break;

}

return 0;

}

cin >> a >> op >> b >> op >> c;
当你输入
-1.1-2.2+-3.3
因为op只有一个存储变量后面的冲了前面的,op是+
因此是
case '+': cout << (a) + (b) + (c) << endl; break;
也就是
-1.2+2.2-3.3=-2.2

图片说明
运行结果依赖于输入:
-1.1
+
-2.2
+
-3.3
则结果正确