| |||||
| Bas de page | |
|---|---|
| Auteur | Sujet : Incompréhension EOF ET NULL |
Publicité | Posté le 19-04-2010 à 23:01:43 ![]() ![]()
|
gilou ModérateurIt's the only NEET thing to do | Quelle boucle?
--------------- I think you guys should really consider virtualizing the whole process and moving it to the cloud. |
Elmoricq Modérateur | Je me permets juste de te conseiller un bouquin : "Le Langage C", de Kernighan & Ritchie. Clair et concis, je pense que ça t'aidera énormément avec toutes les questions que tu te poses. --------------- Blacker than a moonless night, hotter and more bitter than hell itself... That is coffee. |
lassault1 | J'ai édité.. |
gilou ModérateurIt's the only NEET thing to do |
Quand fgets renvoie NULL, le test de la boucle while devient while (NULL != NULL) comme (NULL != NULL) est faux, la boucle while s'arrête.
quand fgetc recupere EOF, caractereActuel prend la valeur EOF, le test de la boucle while devient while (NULL != NULL) comme (NULL != NULL) est faux, la boucle while s'arrête. Pourquoi fgets retourne NULL et fgetc retourne EOF? pour rester cohérent avec leur type de retour déclaré: fgets retourne un pointeur, donc on va retourner une valeur compatible avec ce type: NULL, et fgetc retourne un int, donc on va retourner une valeur compatible avec ce type: EOF. A+, Message édité par gilou le 20-04-2010 à 08:11:13 --------------- I think you guys should really consider virtualizing the whole process and moving it to the cloud. |
lassault1 | Merci..
|
gilou ModérateurIt's the only NEET thing to do |
grosso modo oui, mais on peut aussi utiliser le pointeur si l'on veut:
--------------- I think you guys should really consider virtualizing the whole process and moving it to the cloud. |
lassault1 | Merci mais je vais reformulé ma question :
|
gilou ModérateurIt's the only NEET thing to do |
C'est ce que je t'ai expliqué l'autre fois:
strlen, c'est une fonction de chaine C, donc ca s'occupe de chercher le \0 qui doit terminer la chaine (pour elle la chaine s'arrête la, même si il y a des choses ensuite dans la tableau).
--------------- I think you guys should really consider virtualizing the whole process and moving it to the cloud. |
Sve@r |
|
lassault1 | Si dans mon fichier je met :
Message édité par lassault1 le 20-04-2010 à 21:25:43 |
gilou ModérateurIt's the only NEET thing to do | Parce que c'est dans la boucle du while que tu as: printf("%s\n", chaine); Message édité par gilou le 20-04-2010 à 22:09:49 --------------- I think you guys should really consider virtualizing the whole process and moving it to the cloud. |
lassault1 | En conclusion, si je mets dans mon fichier :
|
gilou ModérateurIt's the only NEET thing to do | Il contiendra la première fois Bonsoir, puis ca sera effacé, et il contiendra Toto (pour être plus juste, il contiendra "Bonsoir\n\0", puis il contiendra "Toto\n\0r\n\0". Mais les fonctions qui travaillent sur les chaines se moquent de ce qui suit le premier \0, alors tu vois pas ce qui est après [pour le voir, il faut regarder ses données comme un tableau, et parcourir case a case]) Message édité par gilou le 21-04-2010 à 02:57:05 --------------- I think you guys should really consider virtualizing the whole process and moving it to the cloud. |
Publicité | Posté le ![]() ![]()
|
| Sujets relatifs | |
|---|---|
| Condition non null pour rentrer dasn ma boucle | [JSP] session.getAttribute("sUser") à null |
| [JS] Problème: ""null":Cannot convert undefined or null to object" | pb NULL.POITEUR.EXCEPTION |
| [Java] supprimer les cases null d'un ArrayList | phpMyAdmin et default value forcée ? |
| [ASP.NET] Value cannot be null. après un databind | getElementById = null, mais pourquoi ? |
| [Résolu]Tester champs NULL sous access, étrange | [ORACLE] probleme "if (select) is null then" SYNTAX |
| Plus de sujets relatifs à : Incompréhension EOF ET NULL | |





