Bonjour,
J'ai ce message de gcc alors que j'aiau debut de mon fichier. Est ce normal ? Car je ne vois pas ou peut etre mon erreur...
Code : Sélectionner tout - Visualiser dans une fenêtre à part #include <stdio.h>
Bonjour,
J'ai ce message de gcc alors que j'aiau debut de mon fichier. Est ce normal ? Car je ne vois pas ou peut etre mon erreur...
Code : Sélectionner tout - Visualiser dans une fenêtre à part #include <stdio.h>
Salut, visiblement, c'est pas standard
Peut etre qu'en -ansi ça ne passe pas donc
Aucun rapport ! La norme ansi n'interdit pas d'utiliser d'autres fonctions que celle spécifier dans la norme.Envoyé par Gruik
Il faut juste ajouter -D__USE_POSIX aux options de gcc pour inclure le prototype des fonctions posix![]()
C'est bien ce que je pensais. Un header est un header quel que soit la norme.Envoyé par gege2061
Une option du compilateur, je n'y aurais jamais pensé. Merci, je testerais des que possible. Puis je fermerais la discussion.Envoyé par gege2061
Par contre, une question. Si on regarde les docs, la declaration de fileno est dans stdio.h. stdio.h contient les declarations des fonctions "std" mais devrait aussi contenir celle-ci.
Cette option est pratique mais je ne comprends pas pourquoi. Il y a une raison technique ?
Le C ANSI (ou C99 dans ton cas) ne l'interdit pas, mais le flag -ansi ou -std=c99 te force à n'utiliser que les fonctions de ces standards là, au cas où tu voudrais porter ton soft sur une autre plateforme strictement C99
Je pense que faire des -D c'est de la bidouille, si tu utilises plus que les fonctions du C99, passe en GNU99 et mets le flag -pedantic pour t'assurer qu'au moins au niveau de la syntaxe c'est conforme C99
C'est plutot génant pour créer tes propres fonctionsEnvoyé par Gruik
Dans ce cas pourquoi il n'y a aucun problème avec GTK+ ?
Bah ça force à faire attention, mais si tu as une autre solution...Envoyé par Gruik
Faire un -D, ce n'est pas de la bidouille, c'est le moyen officiel d'activer les definitions de posix. Mais il faut faire -D_POSIX_C_SOURCE=200112L.Envoyé par Gruik
tu compiles en -ansi ?
fileno n'est pas une fonction C standard à ma connaissance, c'est une fonction POSIX.
SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.
"Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
Apparently everyone. -- Raymond Chen.
Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.
Oui, cela fait partie de la gnu c lib. Et je compile en C99. (sous linux, POSIX compatible donc.)
Partager