Mais que b soit de n'importe quel type, le cast fait que le compiateur ne se pose plus de question. Que b soit void *, float ** ou struct thingly *, ça ne change rien pour str.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent
C'est une spécifité du type void * : il se "caste" tout seul vers n'importe quel autre type de pointeur. C'est d'ailleurs à ça qu'il sert.
Donc c'est INUTILE de le faire.
Et comme c'est inutile, c'est NUISIBLE. Parce que celui qui relit le code plus tard se demande POURQUOI on a pris la peine de mettre un cast explicite, alors qu'apparemment ça ne sert à rien. Donc perd son temps à chercher une raison subtile. Et finit par conclure que celui qui a écrit ça ne connait pas C (avec des termes beaucoup moins polis).
- Edité par michelbillaud 21 octobre 2018 à 19:32:03
C'est une spécifité du type void * : il se "caste" tout seul vers n'importe quel autre type de pointeur. C'est d'ailleurs à ça qu'il sert.
Donc c'est INUTILE de le faire.
Et comme c'est inutile, c'est NUISIBLE. Parce que celui qui relit le code plus tard se demande POURQUOI on a pris la peine de mettre un cast explicite, alors qu'apparemment ça ne sert à rien. Donc perd son temps à chercher une raison subtile. Et finit par conclure que celui qui a écrit ça ne connait pas C (avec des termes beaucoup moins polis).
- Edité par michelbillaud il y a environ 7 heures
Effectivement je debute en C et je me pose beaucoup de question, merci pour ta reponse
Explication du cast, précisions
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent