questo è il codice:
e fa quello che volevo, ossia se gli passo "prima.seconda", restituisce in output "prima"codice:#include <stdio.h> main(int argc, char *argv[]) { int c, i; printf("Insert file name\n"); while((c = getchar())!='.') putchar(c); printf("\n"); }
però io vorrei fare la stessa cosa con la scanf in modo da memorizzare la nuova stringa in un'array di caratteri.
Ho pensato di fare in questo modo
però quello che mi restituisce è la stringa "seconda" cioè tutti i caratteri DOPO il punto. Non capisco come mai. Qualcuno può aiutarmi? Graziecodice:#include <stdio.h> main(int argc, char *argv[]) { int c, i; char str[128]; printf("Insert file name\n"); while((c = getchar())!='.') putchar(c); printf("\n"); scanf("%s", str); printf("\nNew string: %s\n", str); }

Rispondi quotando