Il mio programma è il seguente:
codice:#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <sys/types.h> #include <time.h> #include <string.h> #include <sys/stat.h> #define N 50 #define dim 10 int main (int argc, char **argv) { int i; char nome_file; int fp; printf("Nome file su cui scrivere: "); scanf("%s", &nome_file); fp = open (&nome_file, O_CREAT, 0666); // ho messo la & perchè mi dava errore ma di solito anche se non la metto va srand (time(NULL)); for (i=0; i<=N; i++) { int num_int = rand(); write(fp, &num_int, 10); // dovrebbe srivermi i numeri su file printf("Numero (%d): %d\n", i, num_int); // stampa i numeri a video } close (fp); }
Però non funziona, mi stampa i numeri a video mi crea il file ma vuoto, di seguito l'output:
codice:: : : Numero (47): 1458414155 Numero (48): 425876524 Numero (49): 279330535 Numero (50): 1838176295 Segmentation fault

Rispondi quotando