Scrittura di interi casuali

Il seguente programma random.c usa le funzioni di libreria srandom e random per generare dei numeri casuali, per produrre un file binario che contiene degli interi casuali. L'uso di queste due funzioni non ci interessa. Questo programma può essere utile per testare dei programmi che leggono file binari, dal momento che questo genere di file non si può creare con un editor di testi.

Nel caso in cui serve testare un programma che legge dati di tipo diverso da intero, occorre chiaramente modificare questo programma in modo che scriva i dati di tipo opportuno.

/*
  Scrive interi random su un file binario.
*/

#include<stdlib.h>
#include<stdio.h>
#include<time.h>

int main() {
  FILE *fd;
  int i;
  int n;
  int x;

			/* inizializza il generatore
			di numeri casuali */
  srandom(time(NULL));


			/* apre il file */
  fd=fopen("test.dat", "w");
  if( fd==NULL ) {
    perror("Errore in apertura del file");
    exit(1);
  }


			/* scrive i numeri */
  n=random()%20;
  for(i=0; i<=n-1; i++) {
    x=random()%30;
    fwrite(&x, sizeof(int), 1, fd);
  }


			/* chiude il file */
  fclose(fd);

  return 0;
}