AR_Mateys
Messages postés1Date d'inscriptiondimanche 30 juillet 2006StatutMembreDernière intervention30 juillet 2006
-
30 juil. 2006 à 20:06
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 2007
-
5 août 2006 à 11:48
Bonjour, j'aimerais voir un exemple de menu très simple en C qui peut remplacer celui qu'on pouvait faire avec Borland. Voici un exemple
char menu(void)
{
int choix;
textmode(C80);
clrscr();
textattr(128+15);
gotoxy(25,2);
cprintf("(A)ddition d'une commande");
gotoxy(25,3);
cprintf("(L)iste des clients");
gotoxy(25,4);
cprintf("(S)upression d'un dossier");
gotoxy(25,5);
cprintf("(I)nitialisation du fichier");
gotoxy(25,6);
cprintf("(F)acturation d'un client");
gotoxy(25,7);
textattr(128+10);
printf("Entrer votre choix ");
fflush(stdin);
cscanf("%c",&choix);
choix = toupper(choix);
if ((choix != 'I') &&(choix != 'A')&&(choix != 'S')&&(choix != 'L')&&(choix != 'F')&&(choix != 'Q'))
{
putch(7);
printf("Saisi incorrecte\n");
menu();
}
printf("\n");
return(choix);
}
c'est simplement un menu comme cela que je voudrais effectuer, mais avec Dev c++ qui ne veut pas le prendre bien entendu(les gotoxy et les cprintf). Si quelqu'un pourrait me donner un lien vers un site quelquonque qui me montrerais les commandes Dev à ce propos, ça serait nice. Merci d'avance. :)
vinc1008881
Messages postés257Date d'inscriptiondimanche 22 août 2004StatutMembreDernière intervention29 septembre 20103 30 juil. 2006 à 20:14
borland et devcpp n'ont rien à voir. Il faut inclure les bonnes librairies, comme conio.h qui contient gotoxy (), clrscr (), eviste le cscanf (), et autre cprintf () et remplace le tout par printf () et scanf () qui sont standard. fflush(stdin); est inutile
cs_Emmanuel Delahaye
Messages postés5Date d'inscriptionsamedi 5 août 2006StatutMembreDernière intervention19 janvier 2007 5 août 2006 à 03:46
Les fonctions que tu utilises appartiennent à la bibliothèque conio de Borland. Il existe un portage complet pour Dev-C++ que tu trouves dans les DevPak à télécharger : c'est le module CONIO2. Il suffit ensuite d'ajouter -lconio au projet (options de l'éditeur de lien) et de remplacer
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 200710 5 août 2006 à 09:09
En fait, ça n'est pas le sujet, mais ta fonction "menu()" est très dangereuse, car récursive : si l'utilisateur se trompe, disons 1000 fois par exemple (surement moins), la fonction va provoquer un débordement de pile et faire crasher le programme. Je te conseillerais de remplacer ça par une boucle.
<hr size="2" width="100%" />Sachant qu'on peut toujours enlever une ligne à un programme, et que dans un programme il y a toujours un bug, un programme peut se résumer à une ligne avec un bug.
Vous n’avez pas trouvé la réponse que vous recherchez ?
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 200710 5 août 2006 à 11:48
Et en plus, le "\n" sera effectué à la fin de la fonction menu, mais si l'utilisateur se trompe une fois, il sera affiché deux fois de suite, si il se trompe 20 fois, 21 fois de suite...
<hr size="2" width="100%" />Sachant qu'on peut toujours enlever une ligne à un programme, et que dans un programme il y a toujours un bug, un programme peut se résumer à une ligne avec un bug.