Bonjour,
J'ai un problème dans l'affectation d'un pointeur. Je m'explique :
J'affecte par l'intermédiaire d'une procédure une valeur à un pointeur:
Puis j'utilise cette valeur dans ma procédure :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 procedure ini_log1(var point:logs); begin point^.tabl:=initab; point^.tour_en_cours:=1; point^.joueur_en_cours:=1; point^.nombre_de_joueurs:=1; point^.timer_blue:=300; point^.timer_red:=300; point^.timer_green:=300; point^.timer_yellow:=300; point^.precedent:=nil; end;
Mais celle-ci marche pas sauf si j'essaye de voir la valeur dans le pointeur avant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 new(log_partie);ini_log1(log_partie); new(point); ini_log1(point); new(point2); ini_log1(point2); log_partie^.precedent:=point; point^.precedent:=point2; resultat:=defaite_multi(timer_red,timer_blue,timer_green,timer_yellow,log_partie,joueur,tour,tab); oracle_positif(resultat,test,texte); dispose(log_partie); dispose(point); dispose(point2);
Est-ce que quelqu'un aurait une idée d'où ce bug peut provenir?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 new(log_partie);ini_log1(log_partie); new(point); ini_log1(point); new(point2); ini_log1(point2); log_partie^.precedent:=point; point^.precedent:=point2; writeln(log_partie^.joueur_en_cours);//bug resultat:=defaite_multi(timer_red,timer_blue,timer_green,timer_yellow,log_partie,joueur,tour,tab); oracle_positif(resultat,test,texte); dispose(log_partie); dispose(point); dispose(point2);
Partager