begin process at 2012 02 10 17:06:22
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

Petit problem avec switch


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Petit problem avec switch

jeudi 11 décembre 2003 à 19:34:48 | Petit problem avec switch

Darkneon

Salut,

Mon but est de faire bouger le curseur a l'ecran avec les fleches et d'afficher une lettre a cette position.

J'ai le codde suivant.


#include <stdio.h>
#include <conio.h>
#include <iostream.h>

const char ESC = 27;
const char UP = 72;
const char LEFT = 75;
const char RIGHT = 77;
const char DOWN = 80

int main() {
char key = LEFT;
int done = 0;

int x = 1, y = 1;

while(!done) {
key = getch();

switch(key) {
case UP: y-- ; break;
case DOWN: y++; break;
case LEFT: x--; break;
case RIGHT: x++; break;
case ESC: done = 1; break;
default:
cout << key;
x++;
}

gotoxy(x,y);
}

return 0;
}

Le probleme est que lorsque j'appuie sur une fleche, le code dans default est execute aussi. Je crois que le probleme est avec switch.

Je veux savoir la nature du probleme ainsi que comment le contourner.

Merci !


Party 'till you drop !!!
jeudi 11 décembre 2003 à 19:50:45 | Re : Petit problem avec switch

vecchio56

Administrateur CodeS-SourceS
en fait il ne s'éxécute pas "aussi", c'est le seul a être éxécuté (et heureusement), tout simplement parce que tu n'as pas les bons codes pour les touches

jeudi 11 décembre 2003 à 20:26:49 | Re : Petit problem avec switch

Darkneon

Vecchio, c'est quoi alors le code que tu utilises pour les touches? J'ai re-tester et elle sont bonnes.

J'utilise TC++ si ca peut faire une difference


Party 'till you drop !!!
jeudi 11 décembre 2003 à 20:41:22 | Re : Petit problem avec switch

vecchio56

Administrateur CodeS-SourceS
alors il a un petit pb ton turboc++ s'il continue malgré le break
vc++6 me donne a chaque fois -32 pour un fleche, encore plus bizarre... quoi que non car getch = get character et les fleches ne sont pas des caractères.


jeudi 11 décembre 2003 à 20:47:31 | Re : Petit problem avec switch

djl


eu..., quand tu definie tes constantes faudrait peut etre caster en char(si tc++ est capricieux)

genre const char ESC = (char)27;
jeudi 11 décembre 2003 à 20:52:09 | Re : Petit problem avec switch

vecchio56

Administrateur CodeS-SourceS
tc++ c pas un peu dépassé par hasard??

jeudi 11 décembre 2003 à 21:00:38 | Re : Petit problem avec switch

djl


completement meme, les os avec noyau dos sont en voie de disparition
jeudi 11 décembre 2003 à 21:37:40 | Re : Petit problem avec switch

Darkneon

djl, non, ca change rien.

depasse ou pas, c'est tres bon pour apprendre!
et aussi je suis nostalgique des jeux sous dos :D

Party 'till you drop !!!
jeudi 11 décembre 2003 à 21:42:31 | Re : Petit problem avec switch

djl


ouai c vrai que le mode 3h a un certain charme!
jeudi 11 décembre 2003 à 22:38:35 | Re : Petit problem avec switch

Darkneon

woooooooooooow, j'ai fini par trouver dans une autre source

il re-utiliser getch pour attraper une autre valeur qui est je sais pas trop quoi. Le code est revient a ca



while(!done) {
key = getch();

if (key == 0) {
key = getch();
switch(key) {
case UP: y-- ; break;
case DOWN: y++; break;
case LEFT: x--; break;
case RIGHT: x++; break;
}
}
else if (key == ESC) done = 1;
else {
cout << key;
x++;
}

gotoxy(x,y);
}


Je vais aller chercher maintenant mais si quelqu'un connais un bon site (francais ou anglais) sur la manipulation du clavier et des chaines sous TC++, postez le ici. Merci

et djl, hehe, "charme", c'est le mot juste :_


Party 'till you drop !!!

1 2

Cette discussion est classée dans : case, break, const, char, switch


Répondre à ce message

Sujets en rapport avec ce message

switch ... case [ par didrocks ] J'ai un problème est mon case:int n=App->run; // dépendant de la partie du programme en cours switch(n); { case 1: // intro { App->BmpDeFond = App-> switch case : utilisation de * / + - [ par did2604 ] Bonjour,Je suis débutant et j'ai un problème sur un programme utilisant l'alternative switch case. En fait, je dois utiliser mon case sur des signes t Problème de SWITCH [ par EMSIEN ] Bonjour Voilà J'ai rencontré un problème Lors de l'utilisation d'une instruction switch,D'abord je veux réaliser une fonction permettant de retourner erreur a l'execution [ par vangeurmasker ] J'ai créé un projet sous VC++ 6 pour faire une calcullette qui annalyse une chaine entrée. Lors de la compilation je n'ai aucune erreur. C'est a l'exe help me !!! [ par pascal13 ] j arrive pas a compiler mon programme...je sais que g qlq que souccis au niveau de la sauvegarde des données sur le fichier toutes remarques seront le switch & case [ par DeadStarXt ] Bonjour,Nous souhaiterions compacter la syntaxe suivante SANS PASSER PAR default :case 'a' : Instructions;break;case 'b' : Instructions;break;case 'c' Problème switch [ par seleccao ] Bonjours à tous Pour mon application en c++ je travaille avec de l'hexadecimal et j'utilise un switch switch(n1) { case '0000': hexa1 = "0";break; ca client irc [ par tagboys ] bon j'ai trouver une source sur ce site ces un socket bot j'aimerait y rajouter quelque commands .la seul chose qu'il a ces le pong reply .j'aimerait utiliser une string avec switch/case [ par potimarara ] Salut a tous,J ai le code suivant qui a partir de un nom de ficher (avec extension) me renvoir un content-type.Le probleme est que lorsque j extrais l Problème avec cin.getline() [ par monstor_rox ] Bonjour a tousJ'ai un gros problème sur le code suivant : char* menu() {    cout    cout    cout<<"[3] -  Ajouter


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,590 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales