Bonjour à tous,

Je suis en train de réaliser un programme en C (pour la première fois...) pour récupérer des paramètres à stocker dans un fichier de configuration sous la forme :
TEMSIM=1
NUMPORT=12500

Le tout devant tourner sous environnement linux.
Pour ce faire, j'ai écrit le code suivant :
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
44
45
46
47
48
49
struct ParametreGlobaux 
{
  int BoolSimul;  // O ou 1
  int PortDebut;
};
struct ParametreGlobaux parametre;

int main()
{
  int  *NumEgal;
  FILE *fichier;
  char Ligne[1024];
  char ConfPar[20];

  // Ouverture du fichier en lecture seule
  FILE *fp = fopen ("./ConfServeur", "r"); 
  if (fp != NULL)
  {
    // Parcours des lignes du fichier et récupération du paramètre concerné 
    // et stockage dans la structure
    while (fgets(Ligne, sizeof (Ligne), fp))
   {
     if (strchr(Ligne, '='))  // on est bien sur une ligne de configuration
     {
       printf("%s\n",Ligne);
       // Récupération de la position du signe '='
       NumEgal = strstr(Ligne, "=");  // problème 1
      printf("%02u\n",NumEgal); 

       // Recherche ce qu'il ya avant le signe "="
       strcpy(ConfPar,str_sub(&Ligne,0,NumEgal-1));  // problème 2
       printf("%s\n",ConfPar);

       // en fonction de la valeur, valorise l'élément de structure adapté
       If (!strcomp(ConfPar,"TEMSIM"))
       {
         // Valorise l'élément de la structure avec ce qu'il y a après le signe égal
         parametre.BoolSimul = str_sub(&Ligne,NumEgal+1, sizeof(ligne));
       }*/
     }
   }
  }
  else
  {
    // le fichier n'existe pas ou n'a pas pu être ouvert
    return 1;
  }
}
Pour pouvoir utiliser la fonction strstr, j'ai déclaré la variable NumEgal en pointeur. Par contre, je dois passé la valeur (si j'ai bien saisi) de NumEgal à la fonction str_sub (fonction proposé à la rubrique source). Comment faire, j'ai lu plusieurs tutoriaux ou cours et je n'arrive pas à trouver la réponse

Merci d'avance pour toute l'aide que vous pourrez m'apporter.