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 :

passage de char en int


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Ingénieur Développement
    Inscrit en
    Juin 2006
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Développement

    Informations forums :
    Inscription : Juin 2006
    Messages : 140
    Par défaut passage de char en int
    Bonjour
    J'ai une fonction qui me permet de lire un fichier de la forme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    5  5
    B..BB
    ..X.R
    RR..X
    R...R
    ce fichier contient cinq lignes et cinq colonne de differents caracteres.
    Je voudrais savoir qu'est ce qu'il faut changer dans la fonction pour pouvoir lire des fichiers qui contiennent que des int comme ceci par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    5  5
    21 21 21 21 21
    21   2  2   2 21
     5   2   0   2  5
    29  2   2   2 29
    29 29 29 29 29
    voila le code de la fonction
    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
    void PlateauVect::chargeFichier(const char* nom) {
      std::ifstream from(nom);  //ouvre le flux de fichier en entrÈe
      if (!from) {
        std::cerr << "ouverture du fichier" << " `" << nom
        << "' impossible" << std::endl;
        exit(1);
      }
      char car;  //caractËre courant
      if (from.get(car))
        setNbLignes(int(car)-int('0'));
      if (from.get(car) && from.get(car))
        setNbColonnes(int(car)-int('0'));
      v.resize(getNbLignes());
      from.get(car);
      for (int i=0; i<getNbLignes(); ++i) {
        v[i].resize(getNbColonnes());
        for (int j=0; j<getNbColonnes() && from.get(car); ++j)
          v[i][j] = car;
        from.get(car);
      }
    }
    Merci pour votre aide

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 392
    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 392
    Par défaut
    from >> unEntier ?
    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 chevronné
    Inscrit en
    Novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 362
    Par défaut
    Bonjour,

    Il va nous en falloir plus.
    Visiblement tu débutes en C++.
    Est-ce toi qui a écrit la fonction ?
    Est-ce que tu es en train d'apprendre le C++ ?
    Est-ce que tu es en train de faire un programme ?
    A quoi servira ce programme ?
    As-tu le reste du programme ?

    Je t'explique pourquoi je te demande tout ça.
    En fait, ta question n'a pas vraiment de sens, ce que tu crois savoir et que tu supposes dans ta question est pour le moins flou.

    La seule réponse que je puisse donner c'est : "Il n'y a rien que l'on puisse changer dans cette fonction pour qu'elle lise des char". Ce qui ne t'aide pas vraiment.

    Selon le contexte, tu trouveras ici des gens capable de te conseiller sur la méthodologie à adopter, plutôt que sur un détail technique qui 'na pas de sens.

  4. #4
    Membre confirmé
    Profil pro
    Ingénieur Développement
    Inscrit en
    Juin 2006
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Développement

    Informations forums :
    Inscription : Juin 2006
    Messages : 140
    Par défaut
    salut
    oui je débute en c++
    en fait, ce n'est pas moi qui a ecrit la fonction.
    disons que le fichier represente un plateau qui contient des pions pour un jeu.
    le première ligne du fichier reprèsente le nombre de lignes et de colones du plateau et les lignes suivantes contiennent des nombres qui correspondent au différents pions.
    en fait il me faudrait juste une fonction qui m'affiche le plateau comme il est dans le fichier.
    merci

  5. #5
    Membre chevronné
    Inscrit en
    Novembre 2006
    Messages
    362
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 362
    Par défaut
    Je ne sais pas trop quoi te dire, il me semble que tu ne réponds pas trop à mes questions.

    Une bonne méthodologie quand on apprend, c'est de commençer par acquérir des notions théoriques, afin de comprendre ce que l'on fait.

    As-tu compris ce qu'est un tableau ?
    Sais-tu ce qu'est un objet ?
    Sais-tu de quel type est ton objet v ?
    As-tu lu un cours de C++ (tu peux en trouver un ici)


    Une bonne méthodologie quand on commençe à manipuler, c'est de commençer doucement : faire un code qui affiche "bonjour" devrait être ta première étape. Ensuite, tu pourras faire un code qui affiche un échiquier.

    Je ne crois pas qu'adapter du code soit pas une bonne façon de commençer.
    Je ne sais pas trop ce que tu veux faire comme programme, mais pourquoi ne pas recommençer depuis le début ?

    Lire du code fait par d'autre est une excellente façon de progresser, mais plus tard et à condition d'être certain de la qualité du code en question.

    Qu'en penses-tu ?

  6. #6
    Membre confirmé
    Profil pro
    Ingénieur Développement
    Inscrit en
    Juin 2006
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur Développement

    Informations forums :
    Inscription : Juin 2006
    Messages : 140
    Par défaut
    En fait je commence un miniprojet qui consiste en ma mise en ouvre d'un jeu à deux qui s'appelle agora. je sais que je suis débutant mais c'est très faisable. j'ai déja commencé à faire pas mal de choses.
    merci pour les conseils en fait, j'ai commené à bouquiner un peu et ça m'a aider à bien commencer.
    je vais tenir au courant sur d'autres discussions si je rencontres des difficultés.
    à +

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

Discussions similaires

  1. Convertion char vers int
    Par barthelv dans le forum C
    Réponses: 8
    Dernier message: 08/10/2011, 21h45
  2. [Debutant] conversion de char en int
    Par Marc_3 dans le forum Langage
    Réponses: 9
    Dernier message: 31/08/2011, 12h02
  3. transformer un char en int
    Par transistor49 dans le forum C
    Réponses: 7
    Dernier message: 13/12/2005, 21h47
  4. [Conversion]Convertir un char[] en int
    Par ThanosT dans le forum Général Java
    Réponses: 10
    Dernier message: 11/11/2005, 12h23
  5. "Conversion" d'un char en int ou longueur
    Par Michaël dans le forum C
    Réponses: 6
    Dernier message: 15/08/2003, 11h40

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