Тема: Проблема з обчисленням в С++
Вот ми маємо таку задачку:
вводимо якісь цифри + знаки арифметичних операцій(тільки + і -): 5+4-7+10-3
і щоб результаті воно розпізнавало ці знаки операції і програма сама їх додавала, тобто:
 5+4-7+10-3=9.
#include "stdafx.h"
#include <iostream>
using namespace std;
#include <stdio.h>
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "rus");
    cout<<"Введите строку: ";
    char a[100], *p, *znak1="+", *znak2="-";
    int i=0, summa = 0;
    cin>>a;
    p=strtok(a, znak1); //умова для "+"
    while (p)
    {
        int b = atoi(p);
        if(*znak1)
        {
            summa+=b;
            p=strtok(NULL, znak1);
        }
        else                         //<- ввів умову для "-", але як саме задати ще один 
        {                               //strtok якраз  для цього знака не представляю
            summa-=b;
            p=strtok(NULL, znak2);
        }
    }
    cout<<a<<" = "<<summa<<'\n';
    system("pause");
    return 0;
}
  ололо на 