Forum Programmation.c++ Conseil pour débuter en c++

Posté par  .
Étiquettes : aucune
0
19
juin
2006
Bonjour

Je cherche à débuter en c++ et pour cela j'aimerai créer un application qui me permette de transférer tout ce qui arrive sur le port lpt1 vers un fichier.

Quelqu'un pourrait il m'aiguiller?

Merci d'avance
  • # Quelle sont tes connaissances de base ?

    Posté par  . Évalué à 3.

    Tout est dans le titre dis nous quel autre langage tu connais !
  • # Les fichiers spéciaux ?

    Posté par  . Évalué à 3.

    Supai un linuxien debutant...


    Essaie déjà, en ligne de commande :
    $ cat /dev/lp0 > ton_fichier

    C'est l'un des grands avantages d'Unix : Tu peux contrôler la majorité des ressources sans avoir à écrire une ligne de code ni lancer une application dédiée.

    Après, comme dit plus haut, ce serait sympa de savoir ce que tu connais déjà, effectivement. Sinon, le meilleur moyen de contrôler le port parallèle en C++ sous Linux est de faire exactement ce que tu ferais en ligne de commande, c'est-à-dire l'ouvrir et le traiter comme s'il s'agissait d'un fichier ordinaire.
    • [^] # Re: Les fichiers spéciaux ?

      Posté par  . Évalué à 1.

      Mes connaissances sont toutes petites.

      Je connais un peu des commandes shell.

      J'ai fais deux ou trois bat pour me faciliter la vie mais je voudrai approfondir ds un language afin de me construire des outils.

      J'ai fais un peu de basic et turbo pascal mais cela remonte à bien longtemps.

      J'attends vos conseils.
      • [^] # Re: Les fichiers spéciaux ?

        Posté par  . Évalué à 3.

        Je te conseille de mettre de coté le DOS et Windows pour un moment.

        Si tu as fait du Turbo Pascal, du Basic, et des fichiers Bat, certes tes connaissances ont 15 à 20 ans d'âge, mais au moins tu sais faire un peu plus que cliquer sur des icônes.

        Dans un premier temps, essaie de te familliariser avec Unix, d'une manière générale. Sa ligne de commande est extrêmement puissante, et te permet la plupart du temps d'arriver à faire ce qui t'aurait nécessité l'écriture d'un programme dans un environnement Microsoft.

        Trouve-toi déjà un tutoriel Unix qui te convienne :

        http://www.google.fr/search?hl=fr&q=Tutoriel+UNIX&bt(...)

        Commence par t'entraîner avec le Shell pour être efficace.

        ---

        Ensuite, si tu veux débuter en C++, pas de problème, mais connais-tu déjà le C au moins ? Si ce n'est pas le cas, la plupart des gens te conseillera de commencer d'abord par cela.

        Essaie d'explorer gcc et g++ d'un coté, et de lire le cours de Casteyde de l'autre (le meilleur à mon goût) :

        http://casteyde.christian.free.fr/cpp/cours/online/book1.htm(...)
        • [^] # Re: Les fichiers spéciaux ?

          Posté par  (site web personnel) . Évalué à 2.

          Contrairement aux idées reçues, le C n'est pas un passage nécessaire pour l'apprentissage du C++. Il complique pas mal les premiers pas du débutant en forçant très tôt l'apprentissage de notions évoluées qui auraient pu être vues en toute quiétude bien plus tard. C'est aussi comme cela que l'on se retrouve avec des cours/TPs/TDs qui montrent des codes incorrects (typiquement qui font dans le buffer overflow), les codes justes étant trop complexes pour des débutants.

          Et non, commencer par le C++, ne veut pas dire de commencer par l'OO. Il s'agit juste de s/char*/std::string, s/array/std::vector, s/passage de pointeurs par valeur/passage d'argument par référence/, s/syntaxe et pièges de printf/cout, s/scanf(ptr)/cin>>donnée/, ... C'est tout bête, mais cela fait toute la différence : on peut se concentrer sur l'algorithmique et autres choses vraiment importantes dans un premier temps.

          Bref. Plein de ressources à ce sujet :
          - la FAQ sur le site de Stroustrup, avec un lien vers un article que je ne peux que conseiller de lire et de méditer. Il traite du pourquoi le C++ doit être enseigné comme un langage à part entière
          - la FAQ sur developpez qui a une Q/R sur comment débuter en C++.

          Je vous laisse sortir votre moteur de recherche préféré.

          Côté cours de C++, le meilleur que je connaisse, c'est Accelerated C++, par Koenig et Moo chez Addisson Wesley. Il n'a pas été traduit. C'est un ouvrage pédagogique qui n'est pas un ouvrage de référence, et qui ne traite ni de C, ni de C/C++, mais bel et bien de C++98.


          Pour en revenir à ce que cherche à faire l'OP. Non seulement le C++ n'est pas le plus adapté à ce genre de traitements (tout comme le C ; Cf. la redirection déjà montrée qui prend un tiers de ligne à écrire), mais en plus le C++ natif ne doit pas le permettre si mes souvenirs sont bons -- je ne suis pas persuadé que l'on puisse ouvrir /dev/lp0 avec un simple std::fstream, mais je peux me tromper. Il y a de fortes chances qu'il faille utiliser des APIs système ou POSIX, dont les interfaces demandent des connaissances en C...
          • [^] # Re: Les fichiers spéciaux ?

            Posté par  . Évalué à 1.

            Merci a tous pour vos infos.

            J'en prends bonne note.


            A bientôt
            • [^] # Re: Les fichiers spéciaux ?

              Posté par  . Évalué à 1.

              Dans les messages précedents, on m'a donné comme tuyau

              cat/dev/lp0> mon_fichier

              Par compte le problème est que les données que je veux récuperer se trouve sur un pc windows.

              Puis je faire cette commande depuis un debian, de manière constante en créant un fichier par journée.

              Si oui comment puis je m'y prendre.


              Merci d'avance.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.