Bonjour j'ai un soucis avec mon programmes, je suis entrain de m'entraîner mais je bloque.
J'ai voulus faire un header avec mes variables que voici :
Voici le code que j'essaye, je souhaite récupérer caractère par caractère pour ensuite mettre des choses derrières a récupérer plutard.
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 #include <stdio.h> #define TAILLE_MAX 100 typedef struct Armes_de_contact Armes_de_contact; struct Armes_de_contact { char Nom[TAILLE_MAX]; char DM[7]; char Prix[5]; int bool_attributs; char attribut1[TAILLE_MAX]; }; Armes_de_contact *tab_armes_de_contact[15];
Le problème est que cela fonctionne très bien pour de petits mots tel que ( gourdin : ) mais par exemple Epée ou hache à 2 mains est beaucoup trop long et je n'ai pas le mot en entier, alors que pourtant ma variable nom devrais pouvoir la stocker.
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 #include <stdio.h> #include <string.h> #include "Variables.h" #define TAILLE_MAX 100 int main(int argc, char** argv) { FILE *Armes_de_contact_fichier = NULL; Armes_de_contact_fichier = fopen("Armes de contact.txt", "r"); int i,j; char boolean; char separation; if (Armes_de_contact_fichier != NULL) { for ( i = 0; i < 11; i++) { boolean = ' '; separation=' '; for ( j = 0 ; separation!=':';j++) // Je récupère le nom jusqu'à ce que je croise le caractère double points. { separation=fgetc(Armes_de_contact_fichier); tab_armes_de_contact[i].Nom[j]=separation; } if ( separation == ':') { tab_armes_de_contact[i].Nom[j+1]='\0'; } printf("%s ",tab_armes_de_contact[i].Nom); } } else { printf("erreur"); } return 0; }
J'ai utiliser le debugguer et je vois bien ma variable separation prendre la bonne valeur à chaque fois cependant je n'arrives pas à accéder aux valeurs de ma structure qui se trouve dans l'autre fichier à l'aide de "Watches"
Partager