Comment cacher du texte en C?

Fermé
bibi5674 Messages postés 21 Date d'inscription dimanche 5 juin 2011 Statut Membre Dernière intervention 6 décembre 2013 - 7 juil. 2011 à 15:23
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 30 août 2011 à 08:24
Bonjour,
Je suis entrain de réaliser un script en C pour un jeu en console et en mode 2 joueurs un utilisateur doit rentrer un nombre a l'écran et le faire deviner à l'autre, je m'y prends avec un scanf mais le texte reste affiche a l'écran, il n'y a donc aucune difficulté pour l'adversaire.
Y aurait il un moyen de cacher le nombre entre comme par exemple sous Linux quand on rentre un mot de passe dans la console après un Sudo ? Je suis sous Mac OSX avec xCode mais je ça ne change rien.
Merci par avance de votre aide


A voir également:

5 réponses

KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 019
7 juil. 2011 à 15:39
Tu peux regarder char * getpass(const char *prompt);
0
bibi5674 Messages postés 21 Date d'inscription dimanche 5 juin 2011 Statut Membre Dernière intervention 6 décembre 2013
7 juil. 2011 à 22:02
Merci beaucoup, ça marche aussi si c'est pas sous Linux ?
0
KX Messages postés 16752 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 août 2024 3 019
7 juil. 2011 à 22:06
Sous Windows non, pour Mac je ne sais pas... faut regarder.
0
Bonjour. Sur un système Unix, donc faisable sur les macs, tu peux utiliser la fonction getpass(char* string) présente dans la bibliothèque unistd.h.

Bonne journée.
0
periplasme Messages postés 391 Date d'inscription vendredi 22 avril 2011 Statut Membre Dernière intervention 5 février 2013 53
30 août 2011 à 04:58
moui ... dans le genre bourrin de service, moi quand j'avais codé ce jeux, j'avais fait une boucle avec une 100aine de retour chariot, plus abordable pour un débutant et portable ;-)

sinon "script en C" ça ne veux rien dire ;-)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 841
30 août 2011 à 08:24
Getpass est une fonction obsolète.
Sous linux/mac, il suffit de mettre le terminal en mode raw en utilisant tcgetattr.
Sur windows, cela se fait facilement avec SetConsoleMode.

Cordialement,
0