Calirto, Freddyone Achats/Ventes : Rhadamanthis Divers : Naunaud128, Ashe, 1 utilisateur anonyme et 22 utilisateurs inconnus

 Mot :   Pseudo :  
 
 Page :  1  2  3  4  5
Auteur
 Sujet :

Cherche bon tuto pour du C

 
n°53637
Ashe
reenignE esreveR
Posté le 17-12-2006 à 20:56:22  profilanswer
 

Reprise du message précédent :
C'est normal, et c'est une console, pas une fenetre DOS
Suffit de le lancer a partir de la fenetre DOS deja ouverte
(ou alors ctrl+F5 de VC++, t'utilises quoi, dev-c++?)
Sinon tu peux foutre un getchar() ou une connerie du genre a la fin de ton  main() mais c'est completement stupide


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53638
Naunaud128
Crawling Up A Hill
Posté le 17-12-2006 à 20:57:43  profilanswer
 

system (pause);
 
mais faut inclure windows.h je crois (pas sur :p)


---------------
C'est moi Nono, le petit robot, l'ami d'Ulysse.
Souvent les gens prennent leurs propres lacunes pour celles de la société qui les entoure, et cherchent à réformer ladite société parce qu'ils sont incapables de se réformer eux-mêmes. [Isaac Asimov]
n°53639
Ashe
reenignE esreveR
Posté le 17-12-2006 à 20:59:17  profilanswer
 

stdlib.h, et system("pause" ), mais c'est aussi con que le getchar


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53640
Naunaud128
Crawling Up A Hill
Posté le 17-12-2006 à 21:01:27  profilanswer
 

Ashe a écrit :

stdlib.h, et system("pause" ), mais c'est aussi con que le getchar


stdlib, vala :p
 
wé c'est aussi con :p
Enfin, c'est plus sensé quand on commence :)


---------------
C'est moi Nono, le petit robot, l'ami d'Ulysse.
Souvent les gens prennent leurs propres lacunes pour celles de la société qui les entoure, et cherchent à réformer ladite société parce qu'ils sont incapables de se réformer eux-mêmes. [Isaac Asimov]
n°53641
Ashe
reenignE esreveR
Posté le 17-12-2006 à 21:02:38  profilanswer
 

Pas vraiment, ca empeche juste de comprendre ce qu'est une console
Ca m'ferait bien chier si y avait une boite de dialogue "cliquez sur OK pour quitter" quand je ferme Firefox


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53643
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 21:03:32  profilanswer
 

En quoi c'est stupide ?
Getchar c'est pour obtenir un charactère (via le clavier) ?

n°53644
Naunaud128
Crawling Up A Hill
Posté le 17-12-2006 à 21:04:50  profilanswer
 

fredo490 a écrit :

En quoi c'est stupide ?
Getchar c'est pour obtenir un charactère (via le clavier) ?


 
Il scanne le buffer et attend une touche (d'ailleurs si le buffer est pas vide, DTC non? je sais bien qu'avec les pourris scanf faut vider le buffer à tous les coups :p)


---------------
C'est moi Nono, le petit robot, l'ami d'Ulysse.
Souvent les gens prennent leurs propres lacunes pour celles de la société qui les entoure, et cherchent à réformer ladite société parce qu'ils sont incapables de se réformer eux-mêmes. [Isaac Asimov]
n°53645
Ashe
reenignE esreveR
Posté le 17-12-2006 à 21:04:56  profilanswer
 

fredo490 a écrit :

En quoi c'est stupide ?


Voir au dessus...
Un programme console ca s'execute a partir de la console

fredo490 a écrit :

Getchar c'est pour obtenir un charactère (via le clavier) ?


Via stdin, mais en general le clavier wai


Message édité par Ashe le 17-12-2006 à 21:05:18

---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53647
Ashe
reenignE esreveR
Posté le 17-12-2006 à 21:05:31  profilanswer
 

Naunaud128 a écrit :

Il scanne le buffer et attend une touche (d'ailleurs si le buffer est pas vide, DTC non? je sais bien qu'avec les pourris scanf faut vider le buffer à tous les coups :p)


scanf ca sert a rien


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53648
murmex
Complication avant tout...
Posté le 17-12-2006 à 21:05:41  profilanswer
 

C'est stupide par ce que c'est un programme console. Donc si tu le lances comme ça, c'est normal que la console s'ouvre, exécute ton programme, et se ferme une fois le programme terminé.
Si tu veux vraiment voir ce que sort ton programme, tu ouvres une console et tu lances ton programme depuis ta console...

n°53652
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 21:09:52  profilanswer
 

ha ok ...
Donc en gros, XP fait chier pour rien quoi !

n°53653
Ashe
reenignE esreveR
Posté le 17-12-2006 à 21:11:01  profilanswer
 

Ou XP est normal et t'utilises la console n'importe comment


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53654
murmex
Complication avant tout...
Posté le 17-12-2006 à 21:11:57  profilanswer
 

Bah c'est pas un problème d'xp, dans n'importe quel OS ce sera le cas... Si la console s'ouvre automatiquement pour lancer un programme console, elle se ferme automatiquement une fois le programme terminé...
Arrête un peu de casser du sucre sur le dos de Windows pour n'importe quoi, tu gagneras du temps pour te renseigner sur des choses plus importantes... (style apprendre à utiliser Windows)


Message édité par murmex le 17-12-2006 à 21:12:28
n°53655
Naunaud128
Crawling Up A Hill
Posté le 17-12-2006 à 21:12:25  profilanswer
 

fredo490 a écrit :

ha ok ...
Donc en gros, XP fait chier pour rien quoi !


 
Faut pas que t'essaies sur NT4, ou 2k, ou un autre, tu risquerais de dire aussi, qu'ils font chier pour rien :>
C'est toi qui a pas compris comment fonctionnait la console :/


---------------
C'est moi Nono, le petit robot, l'ami d'Ulysse.
Souvent les gens prennent leurs propres lacunes pour celles de la société qui les entoure, et cherchent à réformer ladite société parce qu'ils sont incapables de se réformer eux-mêmes. [Isaac Asimov]
n°53656
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 21:19:07  profilanswer
 

Naunaud128 a écrit :

Faut pas que t'essaies sur NT4, ou 2k, ou un autre, tu risquerais de dire aussi, qu'ils font chier pour rien :>
C'est toi qui a pas compris comment fonctionnait la console :/


Ben c'est pas que j'ai pas compris se que c'est qu'une console, c'est plutot que je sais pas dutout se que c'est !
 
Quand le programme arrive au bout, il se ferme tout seul. Mais je vois pas pourquoi la fenetre dos en ferai de même !
 
Et XP fait chier car acceder à "mes docs" ... via MS Dos est chiant !
XP et Visual Studio veut tout mettre dans Mes documents et ça soule.

n°53657
Ashe
reenignE esreveR
Posté le 17-12-2006 à 21:21:12  profilanswer
 

Si t'as visual studio, tu fais ctrl+F5 et il ferme pas la console
Et suffit de mettre ta solution ailleurs que dans Mes Documents
Et jvois pas en quoi c'est chiant d'acceder a Mes Documents depuis la console


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53658
murmex
Complication avant tout...
Posté le 17-12-2006 à 21:21:25  profilanswer
 

euuuuh...

Démarrer -> Tous les programmes -> Accessoires -> Invite de commande
cd Mes<tab><enter>


C'est tellement dur d'aller dans Mes Documents sous Dos [:mup:3]

Message cité 1 fois
Message édité par murmex le 17-12-2006 à 21:22:19
n°53659
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 21:31:22  profilanswer
 

murmex a écrit :

euuuuh...

Démarrer -> Tous les programmes -> Accessoires -> Invite de commande
cd Mes<tab><enter>


C'est tellement dur d'aller dans Mes Documents sous Dos [:mup:3]


 
encore une fois, faut il le savoir !  :o

n°53660
Ashe
reenignE esreveR
Posté le 17-12-2006 à 21:34:38  profilanswer
 

Donc voila, plus besoin de mettre en pause a la fin vu que:
1) t'as Visual Studio donc ctrl+f5
2) maintenant tu sais comment lancer une console


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53666
LostSoul
Aventurier casqué
Posté le 17-12-2006 à 22:00:10  profilanswer
 

cmd /k tonprogramme.exe
 
(enfin si j'ai bien compris l'info donnée par cmd /?)


Message édité par LostSoul le 17-12-2006 à 22:02:46

---------------
(pas de signature ce jour)
[ www.in-wonderland.net | www.start64.com | www.majorgeeks.com ]
n°53673
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 22:26:47  profilanswer
 

Question, on peut faire un truc du genre :
 


printf  ("Faire traitement 1 ou 2 ?\n" ) ;
if (getchar() == 1)  
     { faire machin...}
else
     { faire machinbis...}


 
En gros, faire le machin si on tape 1 et faire le machinbis si on tape 2 (ou tout autre valeur)
 
Edit, c'est ==  le test non ?
       et correction des parenthèses faite


Message édité par fredo490 le 17-12-2006 à 22:32:44
n°53674
Ashe
reenignE esreveR
Posté le 17-12-2006 à 22:29:05  profilanswer
 

Code :
  1. int c;
  2. printf( "Faire traitement 1 ou 2 ?\n" );
  3. c = getchar();
  4. if (c == '1')
  5. {
  6. }
  7. else
  8. {
  9. }


C'est simple comme ca, mais c'est foireux :o


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53675
LostSoul
Aventurier casqué
Posté le 17-12-2006 à 22:29:14  profilanswer
 

si je me rappelle bien getchar() retourne un code ASCII donc oui c'est tout à fait possible (t'as oublié les parenthèses de ton printf)
genre if(getchar()==0x13) printf("j'ai appuyé sur enter" );
 
sinon comme dit ashe c'est mieux de stocker dans une variable paske sinon ca risque de foirer
 
si tu fais ca:
 
if(getchar()==valeur1) { ... } else if(getchar()==valeur2) { ... }
 
dans le 2e if ce sera à la 2e pression d'une touche


Message édité par LostSoul le 17-12-2006 à 22:30:58

---------------
(pas de signature ce jour)
[ www.in-wonderland.net | www.start64.com | www.majorgeeks.com ]
n°53677
Ashe
reenignE esreveR
Posté le 17-12-2006 à 22:31:11  profilanswer
 

Code :
  1. char * p;
  2. char buff[64];
  3. long num;
  4. printf( "Faire traitement 1 ou 2?\n" );
  5. fgets( buff, sizeof buff, stdin );
  6. num = strtol( buff, &p, 10 );
  7. if (*p && num == 1)
  8. {
  9. }
  10. else
  11. {
  12. }


(et ca c'est un peu mieux)


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53678
LostSoul
Aventurier casqué
Posté le 17-12-2006 à 22:32:26  profilanswer
 

Là il va plus rien pigé le pôvre surtout si il sait pas ce qu'est un pointeur :D


---------------
(pas de signature ce jour)
[ www.in-wonderland.net | www.start64.com | www.majorgeeks.com ]
n°53679
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 22:33:46  profilanswer
 

LostSoul a écrit :

Là il va plus rien pigé le pôvre surtout si il sait pas ce qu'est un pointeur :D


 :pt1cable:

n°53680
Ashe
reenignE esreveR
Posté le 17-12-2006 à 22:34:00  profilanswer
 

Au moins il fera pas des scanf et il essaiera pas de faire des fflush(stdin) qui fonctionnent qu'avec VC++ :p


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53681
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 22:35:49  profilanswer
 

J'ai fait ça et ça a trés bien marché !
 

Code :
  1. #include <stdio.h>
  2. int main() {
  3.      printf ("fait ton choix, 1 ou 2 ?\n" );
  4.      if (getchar() == '1') {
  5.      printf("Bravo tu as fait 1 ! \a\a\a\a\a\a\n" ); }
  6.      else {
  7.      printf(" voila la suite !\n" );
  8.      printf("tu as fait le 2 !!!" ); }
  9.      return 0 ; }

Message cité 1 fois
Message édité par fredo490 le 17-12-2006 à 22:46:14
n°53682
LostSoul
Aventurier casqué
Posté le 17-12-2006 à 22:35:53  profilanswer
 

Ashe : donne lui au moins les explications de comment ca marche, sinon ca lui servira pas à grand chose. Faut être didactique dans la vie
 
fredo : avec une indentation pareille, je veux pas devoir relire ton code quand tu feras un prog de 20.000 lignes ... :sweat:

Message cité 2 fois
Message édité par LostSoul le 17-12-2006 à 22:36:51

---------------
(pas de signature ce jour)
[ www.in-wonderland.net | www.start64.com | www.majorgeeks.com ]
n°53683
Ashe
reenignE esreveR
Posté le 17-12-2006 à 22:39:11  profilanswer
 

LostSoul a écrit :

Ashe : donne lui au moins les explications de comment ca marche, sinon ca lui servira pas à grand chose. Faut être didactique dans la vie


Pourquoi faire, il s'en fout


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53684
Ashe
reenignE esreveR
Posté le 17-12-2006 à 22:39:49  profilanswer
 

fredo490 a écrit :

J'ai fait ça et ça a trés bien marché !
 

#include <stdio.h>
 
int main() {  
     printf ("fait ton choix, 1 ou 2 ?\n" );
     if (getchar() == '1') {
     printf("Bravo tu as fait 1 ! \a\a\a\a\a\a\n" ); }
     else {
     printf(" voila la suite !\n" );
     printf("tu as fait le 2 !!!" ); }
     return 0 ; }



C'est sur, d'ailleur si tu tapes 3 il te dit que tu as fait le 2, ca c'est un programme nickel


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53685
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 22:42:39  profilanswer
 

LostSoul a écrit :

Ashe : donne lui au moins les explications de comment ca marche, sinon ca lui servira pas à grand chose. Faut être didactique dans la vie
 
fredo : avec une indentation pareille, je veux pas devoir relire ton code quand tu feras un prog de 20.000 lignes ... :sweat:


 
Ben pour le moment j'essaye plutot de faire des trucs simple pour appliquer plus ou moins se que j'apprends et pour faire des tests de se qui est possible ou non !
 

Citation :

C'est sur, d'ailleur si tu tapes 3 il te dit que tu as fait le 2, ca c'est un programme nickel


Je sais mais la n'est pas le but ! Je demande choix 1 ou 2... pas 3  :o  
Et c'est juste pour tester.
 
Edit :
Aussi je vois pas la différence entre mes indentation et celles de Ashe  :p  Si ce n'est les couleurs !
Edit 2 : et voila avec les couleurs

Message cité 2 fois
Message édité par fredo490 le 17-12-2006 à 22:47:46
n°53686
Ashe
reenignE esreveR
Posté le 17-12-2006 à 22:43:29  profilanswer
 

fredo490 a écrit :

Je sais mais la n'est pas le but ! Je demande choix 1 ou 2... pas 3  :o


Faire confiance au user, tu es bien naif :o


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53689
Naunaud128
Crawling Up A Hill
Posté le 17-12-2006 à 22:45:35  profilanswer
 

Ashe a écrit :

Au moins il fera pas des scanf et il essaiera pas de faire des fflush(stdin) qui fonctionnent qu'avec VC++ :p


Ca poutre les scanf (première chose qu'on t'apprends pour saisir une entrée clavier à l'inpres :> )

n°53690
LostSoul
Aventurier casqué
Posté le 17-12-2006 à 22:46:33  profilanswer
 

fredo490 a écrit :

Je sais mais la n'est pas le but ! Je demande choix 1 ou 2... pas 3  :o  
Et c'est juste pour tester.


 
 :lol:  
 
Si tu commences comme ca, je te promet bien du plaisir plus tard :p
Une part non négligeable des programmes consiste soit à survalider toutes les interventions de l'utilisateur, soit l'attacher avec des chaînes et des enclumes aux mains pour pas qu'il tape de connerie


---------------
(pas de signature ce jour)
[ www.in-wonderland.net | www.start64.com | www.majorgeeks.com ]
n°53691
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 22:49:25  profilanswer
 

LostSoul a écrit :

:lol:  
 
Si tu commences comme ca, je te promet bien du plaisir plus tard :p
Une part non négligeable des programmes consiste soit à survalider toutes les interventions de l'utilisateur, soit l'attacher avec des chaînes et des enclumes aux mains pour pas qu'il tape de connerie


 
La je fais que tester le  IF/ELSE  :pt1cable:  
Avant de chercher à faire des trucs beaux et bien ordonés, il faut commencer par maitriser quelques commandes non ?

n°53693
LostSoul
Aventurier casqué
Posté le 17-12-2006 à 22:51:52  profilanswer
 

Tu testes le if/else d'accord mais en fait ton programme est faut parce que ton raisonnement est faux.
 
Exprime ton if/else en français
 
si le caractère tapé est '1' alors j'affiche 'c'est 1' sinon j'affiche 'c'est 2'
 
La proposition est fausse.
La plupart des erreurs dans les programmes informatiques viennent d'une mauvaise formulation / expression du problème à la base.


---------------
(pas de signature ce jour)
[ www.in-wonderland.net | www.start64.com | www.majorgeeks.com ]
n°53694
Ashe
reenignE esreveR
Posté le 17-12-2006 à 22:51:52  profilanswer
 

Ben faire gaffe a faire if (x == 1) au lieu de if (x = 1) c'est deja un bon debut, parce que c'est le genre de truc bien lourd a debugger...
(sinon y a des gens qui preferent mettre la constante a gauche, genre if (1 == x), vu que if (1 = x) ca s'compile pas)


---------------
Globe trotter/SDF - Reims, France
Joy, beautiful spark of the gods, Daughter of Elysium, We enter fire imbibed, Heavenly, thy sanctuary.
Trombi Matbe
n°53700
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 23:11:26  profilanswer
 

J'ai mis t'as fait "1" ou "2"  dans le but principal de pouvoir repérer les deux possibilté qui sont réalisé !
Si tu veux jte mes ça :
 

Code :
  1. #include <stdio.h>
  2. int main() {
  3.      printf ("fait ton choix, 1 ou autre chose ?\n" );
  4.      if (getchar() == '1') {
  5.      printf("Bravo tu as fait 1 ! \a\a\a\a\a\a\n" ); }
  6.      else {
  7.      printf("Pfffff, tu sais même pas appuyer sur 1 !\n" ); }
  8.      return 0 ; }

n°53701
LostSoul
Aventurier casqué
Posté le 17-12-2006 à 23:15:22  profilanswer
 

Cay bocou mieu  :love:  
 
au pire cherche comment fonctionne un switch / case ;)


---------------
(pas de signature ce jour)
[ www.in-wonderland.net | www.start64.com | www.majorgeeks.com ]
n°53703
fredo490
Mais pourquoi donc ?
Posté le 17-12-2006 à 23:23:40  profilanswer
 

LostSoul a écrit :

Cay bocou mieu  :love:  
 
au pire cherche comment fonctionne un switch / case ;)


 
J'y vais petit à petit ! Donc ça va venir  ;)  
Je fais plus ou moins un tuto pdf trouvé sur le net, enfin j'essaye de suivre l'ordre d'explication des commandes pour éviter d'en louper.

 Page :  1  2  3  4  5

Aller à :
Ajouter une réponse