Mon compilateur (GCC) me donne l'avertissement :
avertissement : déclaration implicite de la fonction
Aidez-moi à comprendre pourquoi cela se produit.
Mon compilateur (GCC) me donne l'avertissement :
avertissement : déclaration implicite de la fonction
Aidez-moi à comprendre pourquoi cela se produit.
Si vous avez défini les en-têtes corrects et que vous utilisez un système non GlibC
(comme Musl C ) gcc
lancera également error: implicit declaration of function
lorsque les extensions GNU telles que malloc_trim
sont rencontrés.
La solution consiste à envelopper l'extension et l'en-tête :
#if defined (__GLIBC__)
malloc_trim(0);
#endif
Cette erreur se produit parce que vous essayez d'utiliser une fonction que le compilateur ne comprend pas. Si la fonction que vous essayez d'utiliser est prédéfinie dans le langage C, il suffit d'inclure un fichier d'en-tête associé à la fonction implicite. S'il ne s'agit pas d'une fonction prédéfinie, il est toujours bon de déclarer la fonction avant la fonction principale.
Je pense que la réponse à la question n'est pas complète. Je cherchais un problème lié à l'absence de typeof(), qui est une directive de compilation.
Les liens suivants vous éclaireront sur la situation :
https://gcc.gnu.org/onlinedocs/gcc-5.3.0/gcc/Typeof.html
https://gcc.gnu.org/onlinedocs/gcc-5.3.0/gcc/Alternate-Keywords.html#Alternate-Keywords
à partir de la conculsion, essayez d'utiliser __typeof__()
à la place. Aussi gcc ... -Dtypeof=__typeof__ ...
peut vous aider.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.
3 votes
Un "pourquoi ne donne-t-il pas une version d'erreur" : stackoverflow.com/questions/434763/
2 votes
Cela peut également se produire si vous oubliez d'inclure un fichier d'en-tête. Par exemple, si vous essayez d'utiliser strlen() sans inclure string.h, vous obtiendrez cette erreur