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