IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

[débutant(e)] lire un fichier texte et doc de fonctions


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de pimpmyride
    Inscrit en
    Décembre 2005
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 321
    Par défaut [débutant(e)] lire un fichier texte et doc de fonctions
    Bonjour,


    je suis développeur php et honte à moi je n'ai jamais fais de c/c++.
    Donc je m'y mets.
    Je me rends compte que ca ressemble beaucoup à php au niveau des noms de fonctions et de la syntaxe du code.

    Voici mes questions :
    Y-a-il un site à l'instar de php.net qui liste les fonctions C++ ?
    Avez vous un site potable consacré à C++ .

    Je n'arrive pas a déclarer de variable de type string

    voici un code pour lire un fichier (ca marche) est ce que le code est propre ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    // bibliotheques
     
    #include <iostream>
    #include <string>
    #include <stdio.h>
     
    using namespace std;
     
     
    void ReadFile()
    {
    	FILE* file;
    	char lettre;
     
    	file = fopen("pouet.txt","r");
     
    	while(!feof(file))
    	{
    		//cout << fgetc(file);
    		lettre = fgetc(file);
    		cout << lettre;
     
    	}
     
    	fclose(file);
    }
     
     
    void main()
    {
    	ReadFile();
    }
    merci

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par défaut
    Bonjour,
    Un bon site pour la doc est http://www.cppreference.com mais il ne montre pas tout (principalement les streams).

    Par contre, ton code, c'est plus du C que du C++: En C++, on n'utilise plus les fxxxxx() pour accéder aux fichiers.
    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.

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    780
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 780
    Par défaut
    première question, tu veux faire du C ou du C++? Est-ce que tu vois les différences entre les deux? Comme tu as posté dans le forum C++, on va dire que c'est ce que tu veux faire.

    Citation Envoyé par pimpmyride Voir le message
    Je me rends compte que ca ressemble beaucoup à php au niveau des noms de fonctions et de la syntaxe du code.
    la syntaxe ressemble à celle du C, qui est la base du C++, mais c'est tout.

    Y-a-il un site à l'instar de php.net qui liste les fonctions C++ ?
    Avez vous un site potable consacré à C++
    commence par lire la FAQ C++ de ce site.

    Je n'arrive pas a déclarer de variable de type string
    voir FAQ

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    #include <string>
    #include <iostream>
     
    int main()
    {
       std::string maString;
     
       maString = "une string";
     
       std::cout << maString << std::endl;
     
       return 0;
    }
    voici un code pour lire un fichier (ca marche) est ce que le code est propre ?
    c'est du code C, pas du C++. Voir la FAQ C++ pour le code correct avec fstream et getline.

  4. #4
    Membre éclairé Avatar de pimpmyride
    Inscrit en
    Décembre 2005
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 321
    Par défaut
    ok merci pour les réponses.
    Vous m'avez éclairer sur la différence entre c et c++, j'avais un peu du mal a voir les différences etc... je vais potasser les docs

  5. #5
    Expert confirmé
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 296
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 296
    Par défaut
    Ce code C n'est pas bon non plus.
    Il y a le même problème de détection de fin de fichier qu'en c++ (le contraire en fait) -> "while (read(f)) {...}"
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  6. #6
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par défaut
    Salut,

    Le code que tu fournis est un horrible mélange de C et de C++

    Entre autre:
    • #include <iostream> et #include <string> sont des en-têtes C++ alors que
    • #include <stdio.h> est une en-tête C
    • using namespace std; et cout << lettre; sont strictement C++ mais
    • FILE* file; , file = fopen("pouet.txt","r"); et lettre = fgetc(file); sont des instructions C

    Enfin, il faut se méfier du while(!feof(fichier))

    En C, ton code devrait être
    Code C : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    #include <stdio.h>
    void ReadFile()
    {
        FILE* file;
        char lettre;
        file = fopen("pouet.txt","r");
        while(!feof(file))
        {
            lettre = fgetc(file);
            printf("%c",lettre);
        }
        fclose(file);
    }
     
    /* !!! main est une fonction qui renvoie d'office un int:
     *  -0 si réussite
     *  -autre chose si échec 
     *(linux fait la différence entre échec et avertissement ;) 
     */
    int main()
    {
        ReadFile();
        return 0;
    }
    En C++, et pour rester identique, le code prendrait la forme de
    Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    #include <iostream>
    #include <fstream>
    using namespace std; /*facultatif */
    void ReadFile()
    {
        ifstream ifs("poet.txt");
        char c;
        while(ifs>>c)
            cout<< c;
    }
    int main()
    {
        ReadFile();
        return 0;
    }
    [EDIT]j'en oublie le principal:
    tu trouvera sur ce site un tas de cours et la FAQ C++ (il y a aussi la FAQ C) qui répondront à la plupart de tes questions
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Comment lire un fichier texte de chiffres ?
    Par Bibifloch dans le forum Débuter
    Réponses: 3
    Dernier message: 29/09/2007, 21h29
  2. [débutant]Perl lire un fichier texte
    Par Ralfman68 dans le forum Langage
    Réponses: 5
    Dernier message: 06/06/2007, 20h28
  3. [Débutant] Lire un fichier texte
    Par marcm dans le forum Pascal
    Réponses: 2
    Dernier message: 05/06/2007, 14h51
  4. Réponses: 1
    Dernier message: 24/11/2004, 16h54
  5. Réponses: 2
    Dernier message: 26/05/2004, 17h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo