Ho questo codice, il cui scopo è togliere ogni spazio da una stringa, ma non funziona perché (penso) che in quell'if consideri tutti i caratteri a partire da [i] e non il carattere [i]...
Si potrebbe copiare temporaneamente il carattere in un char... Ma se si può fare in altro modo è meglio
codice:#include <stdio.h> #include <string.h> #define MAXLEN 512 int main(void) { char expression[MAXLEN]; char cleanexpr[MAXLEN]; int i; printf("Inserisci una espressione > "); gets(&expression); for (i = 0; i < strlen(expression); i++) { if (expression[i] != " ") { strncat(&cleanexpr, &expression[i], 1); } } printf("%s", cleanexpr); return 0; }


Rispondi quotando

