Je fais appel a une fonction (decale_enigma) à partir du main
voici la fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 int main(int argc, char *argv[]){ Enigma machine_chiffrage; Enigma machine_dechiffrage; decale_enigma(&machine_chiffrage);
les résultats du printf sont corrects
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 void decale_enigma(Enigma *e) { int i; printf("\n\ncrans[0] = %d",*e->crans[0]);
pour des problèmes de tp je suis contraint de l'appeler à partir d'une autre fonction et je ne dois pas bousculer les paramètres
séquence d'appel dans le main
comment se présente la fonction chiffre_chaine
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 chiffre_chaine(chaine,&machine_chiffrage); /*decale_enigma(&machine_chiffrage);*/
et là le même printf donne des résultats aberrants
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 char* chiffre_chaine(char *c, Enigma *e) { Enigma machine_chiffrage; Enigma machine_dechiffrage; decale_enigma(&machine_chiffrage);
Enigma est une structure
Manifestement le passage de paramètres pose problème et je ne sais comment le résoudre ... merci ........
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 typedef struct enigma { char rotors[NB_ROTORS][NB_LETTRES]; int crans[NB_ROTORS - 1][NB_LETTRES]; } Enigma;
Partager