quelqu'un peut me dire pourquoi on a toujours, ce warning quand on laisse pas un nouveau ligne en fin de fichier?:?
Version imprimable
quelqu'un peut me dire pourquoi on a toujours, ce warning quand on laisse pas un nouveau ligne en fin de fichier?:?
Va voir la FAQ pour un peu plus de précision: http://c.developpez.com/faq/c/?page=...VERS_nonewline
En résumé,appuie sur entrer sur la derniére ligne de code.
Quel est ton EDI ?
ce que je veux savoir c pas comment enlevé ce wrning (appuier sur en trer en fin de fichier), pourquoi on aura se wraning!!.
je te remerci j'ai trouvé la réponse dans la faq;)
http://c.developpez.com/faq/c/?page=...VERS_nonewline
Je rappelle que la langue de ce forum est le français, pas le 'je mélange les lettres et je tire au hasard'...Citation:
Envoyé par moon93
Salut,
Il s'agit d'une contrainte imposee par la norme ISO/IEC 9899 (le document constituant le standard officiel du langage C).
Sec. 5.1.1.2 "Translation Phases":
De nombreux parsers sont implementes sous forme de FSM ("Finite State Machines", ou automates finis), pour lesquels la presence de certains caracteres dans un contexte donne declanche une transition d'etat. La presence d'un saut de ligne en fin de fichier represente un EOF (End Of File), selon la norme en question.Citation:
A source file that is not empty shall end in a new-line character, which shall not be immediatly preceded by a backslash character before any such splicing takes place.
On peut sans doute imaginer qu'il s'agit d'une partie de l'heritage historique laisse par certaines implementations plus ou moins buggees du preprocesseur C, qui d'un point de vue algorithmique, dependaient d'un "jusqu'a une sequence de saut de ligne".
En resume, le saut de ligne a la fin est souhaitable: il ne s'agit pas forcement d'une ligne vide a la fin du fichier, mais d'un saut de ligne apres le dernier caractere de texte "visible", ce caractere ne devant pas etre un backshash.
-pirus.
\n n'est pas un séparateur de lignes, mais un marqueur de fin. Donc un fichier sans \n est logiquement un fichier avec une ligne non terminée. Un fichier avec un \n à la fin n'est pas plus terminé par une ligne vide qu'un bloc d'instructions en C terminé par un ; n'est terminé par une instruction vide.
Bonjour,
Je suis confronté au problème présenté dans cette discussion.
Mais la solution proposée, qui consiste à rajouter une ligne vide à la
fin du fichier, n'est pas satisfaisante. En effet j'ai récupéré un code qui contient de nombreux fichiers et à la compilation de chaque fichier
j'ai ce message ...
Je me demande s'il n'existe pas une option de compilation qui
permettrait de supprimer juste ce warning ?
Michel
Certains compilateurs comme MCC18 pour le développement sur microcontrôleur afficheur error au lieu de warning et même pire il ne vous indique pas d'où l'erreur provient.
Peut être, mais ce n'est pas souhaitable. On ne guérit pas le malade en cassant le thermomètre...
Tu crées un script (batch) qui passe tous tes sources à l'indenteur (GNU Indent, par exemple), et non seulement, les '\n' seront mis comme il faut, mais la présentation sera lisible...