Bonjour, je veux tester une fonction pour afficher une variable dans une structure.
Le problème est que mon programme n'affiche pas la valeur rentrée par l'utilisateur mais plutôt une valeur exponentielle !!
Je pense que cela est du à un problème de pointeurs et d'adresse. :/Veuillez saisir l'identifiant de l'individu :
2
Veuillez d�finir la priorit� de l'individu :
3
Identifiant de l'individu : 153419784
Priorit� de l'individu : 153419800
Je vous en serai reconnaissant si vous pouvez trouver le problème et me l'expliquer, merci d'avance !
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 #include "data.h" #include <stdlib.h> individu saisie_individu () { individu c; c.ID = malloc(sizeof(int)); printf("Veuillez saisir l'identifiant de l'individu :\n"); scanf("%i", c.ID); c.priorite = malloc(sizeof(int)); printf("Veuillez définir la priorité de l'individu :\n"); scanf("%i", c.priorite); return c; } void affichage_individu(individu * c) { int p = (*c).ID; int d = (*c).priorite; printf("Identifiant de l'individu : %i\n", p); printf("Priorité de l'individu : %i\n", d); } int main() { individu c; c= saisie_individu(); affichage_individu(&c); return 0; }
Partager