Partage
  • Partager sur Facebook
  • Partager sur Twitter

Cacher du texte

Sujet résolu
    10 juillet 2012 à 15:56:01

    Salut,

    Je suis entrain d'apprendre le langage C,

    Je suis entrain de faire le jeu du Plus ou moins avec les améliorations proposer.
    Je suis face à un problème je souhaite que :

    - Joueur 1 rentre un nombre sans que le joueur 2 le voit,
    Donc je vous demande comment faire ?

    Merci
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      10 juillet 2012 à 16:02:02

      Sous Windows :

      system("cls");
      


      Cette commande efface la console, donc le joueur 2 ne verra pas ce que le joueur 1 à écrit :) Il doit bien sûr ne pas regarder quand il tape un nombre :lol:
      • Partager sur Facebook
      • Partager sur Twitter
        10 juillet 2012 à 16:04:12

        La solution que je connait n'est pas portable et ne fonctionne qu'avec windows.
        il s'agit d'utiliser getch() de conio.h

        (la solution "que je connais pas" est d'utiliser pdcurses pour passer le terminal en mode raw (controler toute la console, comme un écran).
        Cette solution est portable mais plus compliquée, surtout si on est au plus ou moins)

        Je te laisse te documenter avec google.

        Edit : grilled.

        NB : system("cls");
        n'est pas portable non plus et fonctionne entre autre sous windows mais pas sur tous les GNU/linux.
        je déconseille d'utiliser la fonction system..

        Autant sauter une vingtaine de lignes :p
        • Partager sur Facebook
        • Partager sur Twitter
        perror(const char * str); will save your life !
          10 juillet 2012 à 16:04:59

          Citation : LePetitRobear

          Sous Windows :

          system("cls");
          



          Cette commande efface la console, donc le joueur 2 ne verra pas ce que le joueur 1 à écrit :) Il doit bien sûr ne pas regarder quand il tape un nombre :lol:



          Sa question n'est pas ça ( à moins que je me trompe aussi ^^ )

          Regarde sur ce post :
          http://www.siteduzero.com/forum-83-396 [...] sse-en-c.html

          • Partager sur Facebook
          • Partager sur Twitter
          Anonyme
            10 juillet 2012 à 16:07:23

            Non non c'est bien ça. Deux personnes sont devant le même écran, dans son cas : le joueur 1 tape le nombre, mais celui ci est toujours visible dans la console une fois que le joueur 2 tente ses premiers essaies.
            • Partager sur Facebook
            • Partager sur Twitter
              10 juillet 2012 à 16:12:01

              De manière portable essaye :
              printf("\033[2J" );


              • Partager sur Facebook
              • Partager sur Twitter
                10 juillet 2012 à 16:20:37

                Si tu codes pour toi, que tu en est au + ou - du tuto et si tu es sous windows,
                ne t'embêtes pas, utilise ça : getnombre (utilise getch) (by Fvirtman)

                Avant de faire un code portable, il faut connaître les bases du langage :p
                (même si c'est mieux de prendre l'habitude ^^ )
                • Partager sur Facebook
                • Partager sur Twitter
                perror(const char * str); will save your life !
                Anonyme
                  10 juillet 2012 à 16:27:41

                  #include <stdio.h>
                  #include <conio.h>
                  
                  int MotDePasse(void);
                  
                  int main(void)
                  {
                      int mdp = 0;
                  
                      printf("Mot de passe : ");
                      mdp = MotDePasse();
                  
                      printf("\n\nLe mot de passe est %d.", mdp);
                  
                      return 0;
                  }
                  
                  int MotDePasse(void)
                  {
                      int nombre = 0, caractere = 0;
                  
                      do
                      {
                          caractere = getch();
                          if(caractere >= '0' && caractere <= '9')
                          {
                              nombre *= 10;
                              nombre += caractere - '0';
                              putchar('*');
                          }
                      }while(caractere != '\r');
                  
                      return nombre;
                  }
                  

                  -
                  Edité par Anonyme 24 juillet 2020 à 15:32:41

                  • Partager sur Facebook
                  • Partager sur Twitter
                    10 juillet 2012 à 16:29:14

                    Mwahahaha ! :diable:
                    grilled :p

                    (c'est exactement ce qu'il y a dans mon lien :) )
                    • Partager sur Facebook
                    • Partager sur Twitter
                    perror(const char * str); will save your life !
                    Anonyme
                      10 juillet 2012 à 16:30:34

                      Oui mais moi au moins j'ai écris du code.
                      :p

                      -
                      Edité par Anonyme 24 juillet 2020 à 15:32:46

                      • Partager sur Facebook
                      • Partager sur Twitter
                        10 juillet 2012 à 17:21:44

                        Merci beaucoup de votre aide,
                        Si quelqu'un développe sous CODE:BLOCK, peut t-il me le passer en ZIP avec la sdl d'installer car je bug (v 10.05)

                        Merci d'avance
                        • Partager sur Facebook
                        • Partager sur Twitter
                          10 juillet 2012 à 17:38:31

                          Citation : TwiSka

                          car je bug (v 10.05)



                          Mais encore ?
                          • Partager sur Facebook
                          • Partager sur Twitter
                          Zeste de Savoirbépocode minimal  — Ge0 <3
                            10 juillet 2012 à 17:59:32

                            Je comprend pas ta question ?
                            Je n'arrive pas a l'installer même en suivant le tuto à la lettre
                            • Partager sur Facebook
                            • Partager sur Twitter
                              10 juillet 2012 à 18:04:09

                              Tu fais donc une erreur quelque part. Exécuter rigoureusement un processus qu'on ne comprend pas en lisant simplement les étapes une à une n'est pas si simple que ça en à l'air. Quel est ton problème exactement ?
                              • Partager sur Facebook
                              • Partager sur Twitter
                              Zeste de Savoirbépocode minimal  — Ge0 <3
                                10 juillet 2012 à 22:44:51

                                Alors :
                                Je ne parvient pas à installer la SDL pour dev un logiciel en " fenêtre ".

                                Le problème avant à été résous je dis cela car je vois qu'énormément de personnes qui connaissent le C
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  11 juillet 2012 à 12:36:04

                                  Salut !

                                  Comme le sujet n'est pas encore classé "résolu" je me suis dit que les réponses proposées ci-dessus ne satisfaisaient pas l'auteur du sujet.

                                  Tu cherches peut être ça :
                                  char *getpass (const char * prompt ); (dans #include <pwd.h>).

                                  Cette fonction permet en fait de n'afficher aucun caractère tapé par l'utilisateur (comme les mots de passe sous linux). Il est probable que cette fonction ne soit pas implémentée pour les systèmes autres que UNIX.

                                  Zornel
                                  • Partager sur Facebook
                                  • Partager sur Twitter

                                  Cacher du texte

                                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                  • Editeur
                                  • Markdown