Bonjours à tous,
Je m'essaye en ce moment à la lecture des fichiers au format intel Hex (.hex produits par les compilateurs pour microcontroleur, par exemple) et je rencontre quelques problèmes. Je m'en remets donc à vos expériences.
Dans mon programme ,je définis une structure puis un pointeur du type de cette structure :
Au tout début de ce programme, je déclare le pointeur "hex" de type pHEX que j'alloue via un malloc et que je passe en argument à la fonction qui pose problème :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
Cette fonction a pour but de lire un fichier .hex en entier et remplir la structure comme suit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
- le champ donnees reçoit les données contenues dans le fichier
- le champ erreurs reçoit les numéros de ligne où il y a des erreurs de checksum
- le champ errs_chksum reçoit le nombre d'erreur de checksum
Je vous mets les parties de la fonction lire_hex qui posent problème :
Le programme s'exécute mais n'affiche rien (pourtant ma fonction d'affichage fonctionne) et retourne une valeur d'erreur incompréhensible, du coup je passe en debug. Là, au premier tour de la boucle tout se passe bien mais au second tour à la ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
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
le debugger retourne une erreur de :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
Je ne comprends pas pourquoi j'ai cette erreur. Y a-t-il une erreur dans mon code ? ou est-ce un bug dû à mes outils de dev ?Program received signal SIGTRAP, Trace/breakpoint trap.
In _libmsvcrt_a_iname () ()
Je travaille sous CodeBlocks avec Mingw et gdb. Je suis pas un gourou en C donc j'utilise peut-être mal l'allocation de mémoire à une structure.
Désolé d'être aussi long et merci pour l'aide que vous pourrez m'apporter.
Titux

 

 
		
		 
         
 

 
			
			



 Problème avec une structure
 Problème avec une structure
				 Répondre avec citation
  Répondre avec citation
Partager