Je travaille sur un code que je n'ai pas écrit et j'ai remarqué qu'il y en a beaucoup extern void my_func();
.Pourquoi utiliser `extern void my_func();` plutôt que d'inclure `my_utils.h`?
Ma compréhension est que extern
pour les variables globales, pas pour les fonctions.
Existe-t-il une raison pratique de déclarer une fonction comme extern
plutôt que de la placer dans un fichier d'en-tête et de l'inclure? Ou est-ce juste un choix stylistique?
Les fonctions sont toujours extern par défaut dans C? êtes-vous sûr?? – Donotalo
@Donotalo: Assez sûr, mais il est minuit, alors qui sait ce que la fatigue a fait à mon cerveau. –
Je travaille pour le micro-contrôleur depuis 2 ans. le compilateur que j'utilise est C. mais pas complètement ANSI C, et de nombreuses fonctionnalités de C99 sont absentes, mais pour appeler une fonction non-statique définie dans un autre fichier, nous devons externaliser son prototype, ou inclure l'en-tête. – Donotalo