Bonjour chers amis, je suis entrain de mettre en place un programme qui crée un fichier a l'endoit ou on l'indique, puis genere des chiffres qu'on lui demande a l'interieur du fichier.
voici comment le programme marche:
1) on te demande de creer un fichier a l'endroit où tu souhaite : /endroit_a_enregistrer/nom_du_fichier;
2) grâce à l'appel de la fonction 'generate()', on te demande combien de chiffres cherche tu a generer?
apres avoir entré le nom du fichier et le nombre a generer, mon fichier doit etre remplit d'un nombre aleatoire compris en 0-9

mais lorsque j'appel la fonction "fprintf(fichier, generate());" au niveau du code source et que je compile j'ai cette erreur :

gcc -o dico dico.c -lm
dico.c: In function ‘main’:
dico.c:21:5: error: invalid use of void expression
fprintf(fichier, generate());

à ma façcon de comprendre je pense la fonction "fprintf" n'arrive pas a traiter le generate(). si il ya d'autres explication j'en ai vraiment besoin.
comment y remedier afin de pouvoir ecrir dans mon fichier grace a la fonction 'generate()'??????

le code source est tout en bas!
Merci pour vos reponse, je suis en attente

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
 
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define LG_CHAINE 1000
 
void generate();
 
int main(void){
 
  char chaine[LG_CHAINE] = "";
  FILE* fichier = NULL;
 
  printf("input your directory file to save\n");
  printf("for example '/directory/file_to_save':");
  scanf("%s", &chaine);
  fichier = fopen(chaine, "a+");
  generate();
 
  if (fichier != NULL)
  {
    fprintf(fichier, generate());
    printf("File created with success!\n");
    fclose(fichier);
  }
 
  else
    printf("creating file failed, try again later!\n");
 
return 0;
}
 
void generate(){
 
  int nbre = 0;
  int resultat = 0;
  printf("How number do you want to generate?:");
  scanf("%d", &nbre);
  srand(time(NULL));
  for (int i = 0; i < nbre; i++)
    resultat = rand()%10;
}