Zdravím, mám úkol do školy. Napsat kalkulačku, do které se bude zadávat výraz postfixově. Měl jsem to již vyřešeno, tak že se zadalo číslo odentrovalo, zadalo druhé, enter, a operátor, enter......
Pak nám profesor aktualizoval zadání a chce aby se zadal výraz na jeden řádek. Máme využít funkci strtok. Ale mám problém: viz následující kód
string input;
cin >> input;
int velikost=input.size();
char str[500];
for (int a=0;a<=velikost;a++)
{
str[a]=input[a];
}
char delims[] = " ";
char *result2 = NULL;
result2 = strtok( str, delims );
while( result2 != NULL ) {
printf( "result is \"%s\"\n", result2 );
result2 = strtok( NULL, delims );
}
Když zadám string přímo do kódu
char input[]="ahoj jak se mas ?"
tak to chodí, ale když chci nabrat z konzole string a převést na pole charů, tak mi to vezme velikost jen po první mezeru.
Neví někdo jak to vyřešit prosím?