Bonjour,
J'ai un programme (récupéré), dont je souhaite modifier certaines déclations notamment des #define que je veux passer en tableau de char
Dans le pgm d'origine un nom est déclaré par un define
J'ai remplacé ce define par un fichier paramètre dans lequel je vais chercher "toto" pour le stocker dans un tableau de char[] (char COM[20])
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2#define COM "toto"
Lorsque que j'affiche le contenu de COM, j'ai bien le paramêtre. Cependant ce paramêtre est passé à une fonction. Hors la fonction renvoi un code disant que COM est invalide.
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 ---- int Len = 0; char *pdeb = NULL; FILE *fparm; fparm = fopen("dd:SYSPRM","r"); char COM[20]=""; ---- while(fgets(recparm,80,fparm) != NULL) { pdeb = strchr(recparm,':'); Len = strlen(pdeb); strncat(COM,pdeb,Len); --- --- } ----
Existe t'il une difference entre une chaine créee par un #define est un tableau de char type char[] (dans son contenu) ?
Faut il gérer un '\0' dans mon tableau, ce caractère est'il implicite lors d'un #define ?
Merci
Partager