Dzień dobry,
Próbuje zrobić server który będzie liczył odwrotną notacje polska jednak w kodzie mam scanf który jest niezbędny w pętli do while. Chciałbym go wywalić poza pętle jednak nie wiem nawet czego szukać sscanf mi nie działa, chyba że nie umiejętnie go używam.
Proszę o pomoc
#include <stdio.h>
#include <stdlib.h>
int main()
{
int stos[256], ws = 0;
int a, b, w;
char el[256], tab[256];
do
{
scanf("%s" , el);
if(el[0] >= '0' && el[0] <= '9')
{
printf("IF!@#!@#!#@!#!#");
a = b = 0;
do a = 10 * a + el[b++] - 48;
while(el[b]);
stos[ws++] = a;
}
else if(el[0] == '=') printf("%d\n",stos[--ws]);
else
{
printf("ELSE!@#!@#!#@!#!#");
//ws=ws-1;
b = stos[--ws];
a = stos[--ws];
switch(el[0])
{
case '+':
w = a + b;
break;
case '-':
w = a - b;
break;
case '*':
w = a * b;
break;
case '/':
w = a / b;
break;
case '^':
w = 1;
while(b--) w *= a;
break;
}
stos[ws++] = w;
}
}
while(el[0] != '=');
return 0;
}