Bonjour,
Dans un .h :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
typedef void    (*write_b)(void *,u_char *,u_long,u_long);
Donc c'est un pointeur de fonction (write_b) avec 3 paramètres.
Plus loin dans ce mêm .h :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
typedef struct
        {
           /* 
          procedures et variables diverses
          ...
          */   
           write_b  write_bytes;            /* procedure d'écriture 8 bits */
        }
        t_target;
Donc c'est uns structure avec un champ write_bytes de type write_b. Donc un pointeur sur une fonction.
Je ne maîtrise pas trop les pointeurs de fonctions mais de ce que j'ai vu il faut l'initialiser avec l'adresse d'une fonction. Et les seules possibles initialisations que j'ai trouvé sont du type :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
(p_space->write_bytes)(p_space,(u_char *)buffer,((p_block->adbloc)+offset),nbelts);
avec
Code : Sélectionner tout - Visualiser dans une fenêtre à part
p_space un pointeur sur t_target
Là, ça se complique. Il me semblerait que ce soit un pointeur de fonction mais je demande de l'aide.
Je ne peux pas tout détailler parceque ça s'imbrique dans tous les sens. Mais j'aimerais comprendre sur quoi pointe write_bytes.
Merci