Lascia che la scanf() segua il suo inevitabile destinoOriginariamente inviato da devil89
Vorrei sapere come poter leggere anche gli spazi quando richiedo l'inserimento di una stringa.
Ho fatto una prova con un programma che richiede l'inserimento di una frase da tastiera e scrive iil contenuto in un file.
Il problema è che non legge gli spazi.codice:#include <stdio.h> #define WAIT system("pause") int main() { char str[100]; FILE *stream, *fopen(); stream = fopen("mio.txt", "w"); // testo il puntatore al file if (stream==NULL) { printf ("Errore! Non è stato possibile creare il file\n"); WAIT; exit(1); } printf ("Inserire una frase: "); fscanf (stdin, "%s", str); fprintf (stream, "Frase inserita: %s", str); fclose(stream); WAIT; return 0; }
Se per esempio da tastiera inserisco:
Ciao come stai , sul file mi ritrovo solo Ciao senza il resto della frase.
Come posso leggere anche gli spazi?![]()
Esempio :
codice:#include <iostream.h> #define MAX_STR_LEN 40 int main() { char str[MAX_STR_LEN]; printf("Digita alcune parole (max %d caratteri)\n", MAX_STR_LEN); fgets( str, MAX_STR_LEN, stdin); printf("Hai digitato :\n%s", str); return EXIT_SUCCESS; }

Rispondi quotando