Problème de base en C++

Problème de base en C++ - C++ - Programmation

Marsh Posté le 07-09-2004 à 12:38:20    

Bonjour tout le monde,
 
Voilà. J'ai créé un programme en C++ qui marche sous Windows. Je l'ai modifié pour le rendre compatible avec Linux. Afin de le tester, j'utilise Cygwin. Mon problème est que j'arrive à compiler mon programme mais que je n'arrive pas à l'exécuter (ou je n'en vois pas la trace en tout cas). Du coup j'ai fait un programme HelloWorld tout bête pour tester. Et même ca, ca ne marche pas.  
 
Voilà mon programme Hello World :  

Code :
  1. #include<iostream.h>
  2. int main()
  3. {
  4.   cout<<"Hello World\n";
  5.   return 0;
  6. }


 
Et voilà ce que je tape sous cygwin :  

Code :
  1. g++ -o hello hello.cc


puis  

Code :
  1. hello


 
Il exécute hello mais ne me renvoit rien... Quelqu'un peut-il m'aider ?

Reply

Marsh Posté le 07-09-2004 à 12:38:20   

Reply

Marsh Posté le 07-09-2004 à 13:10:40    

Code :
  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5.   cout << "Hello World" << endl;
  6.   exit(0);
  7. }


Message édité par burgergold le 07-09-2004 à 13:10:55
Reply

Marsh Posté le 07-09-2004 à 13:33:56    

./hello :o

Reply

Marsh Posté le 07-09-2004 à 13:41:16    

exact :D
merci bcp bcp Taz :p
c bizarre quand même.. T'as un élément d'explication ?

Reply

Marsh Posté le 07-09-2004 à 14:12:32    

. n'est pas dans PATH pour des raisons de sécurité

Reply

Marsh Posté le 07-09-2004 à 14:12:48    

Burgergold a écrit :

Code :
  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5.   cout << "Hello World" << endl;
  6.   exit(0);
  7. }



tu veux une baffe ?

Reply

Marsh Posté le 07-09-2004 à 14:14:01    

Taz a écrit :

tu veux une baffe ?


 
quoi il est pas beau mon hello world?
 
javais pas compris sa question, désolé :D

Reply

Marsh Posté le 07-09-2004 à 14:16:48    

tu te rends compte que ton exit(0) est superflu mais surtout qu'il fait n'importe quoi ? si tu rends pas compte, tu lis le topic associé

Reply

Marsh Posté le 07-09-2004 à 14:17:28    

Bah a priori il y a des trucs genant dans le code comme le exit(0). Qui ne provoque pas l'appel du destructeur des objets crées. Donc faut pas l'utiliser mais utilisez return.

Reply

Marsh Posté le 07-09-2004 à 14:19:58    

Kermit a écrit :

Bah a priori il y a des trucs genant dans le code comme le exit(0). Qui ne provoque pas l'appel du destructeur des objets crées. Donc faut pas l'utiliser mais utilisez return.


 
 :jap:  pour l'explication

Reply

Marsh Posté le 07-09-2004 à 14:19:58   

Reply

Marsh Posté le 07-09-2004 à 14:28:26    

c'est pas comme si j'avais un topic d'une page exprès ... et après c'est moi qui passe pour le méchant.

Reply

Marsh Posté le 07-09-2004 à 14:38:41    

Taz a écrit :

c'est pas comme si j'avais un topic d'une page exprès ... et après c'est moi qui passe pour le méchant.


 
je t'ai pas traité de méchant :o
 
d'ailleur j'ai commencé à lire des sections de la biblio C++ mais ya pas mal de contenu alors je pige sur ce que j'ai le plus de besoin en ce moment, lorsque je vais avoir plus de temps, je regarderai le reste  :jap:

Reply

Marsh Posté le 07-09-2004 à 15:05:22    

Taz a écrit :

. n'est pas dans PATH pour des raisons de sécurité


Ok merci pour cette précision. Et merci aux autres aussi quand même  :jap:

Reply

Marsh Posté le 21-09-2004 à 16:28:54    

c'est quand même marrant parce que là, je sors de mon premier cours de prog sous c++, et j'ai eu le même exemple exactement...

Reply

Marsh Posté le 21-09-2004 à 18:01:03    

quelque soit le langage, le premier programme qu'on écrit, c'est toujours HelloWorld

Reply

Marsh Posté le 21-09-2004 à 21:18:07    

Taz a écrit :

quelque soit le langage, le premier programme qu'on écrit, c'est toujours HelloWorld


 
En C, c'est un tout petit peu plus compliqué :

Code :
  1. #include "stdio.h"
  2. #define e 3
  3. #define g (e/e)
  4. #define h ((g+e)/2)
  5. #define f (e-g-h)
  6. #define j (e*e-g)
  7. #define k (j-h)
  8. #define l(x) tab2[x]/h
  9. #define m(n,a) ((n&(a))==(a))
  10. long tab1[]={ 989L,5L,26L,0L,88319L,123L,0L,9367L };
  11. int tab2[]={ 4,6,10,14,22,26,34,38,46,58,62,74,82,86 };
  12. main(m1,s) char *s; {
  13.     int a,b,c,d,o[k],n=(int)s;
  14.     if(m1==1){ char b[2*j+f-g]; main(l(h+e)+h+e,b); printf(b); }
  15.     else switch(m1-=h){
  16. case f:
  17.     a=(b=(c=(d=g)<<g)<<g)<<g;
  18.     return(m(n,a|c)|m(n,b)|m(n,a|d)|m(n,c|d));
  19. case h:
  20.     for(a=f;a<j;++a)if(tab1[a]&&!(tab1[a]%((long)l(n))))return(a);
  21. case g:
  22.     if(n<h)return(g);
  23.     if(n<j){n-=g;c='D';o[f]=h;o[g]=f;}
  24.     else{c='\r'-'\b';n-=j-g;o[f]=o[g]=g;}
  25.     if((b=n)>=e)for(b=g<<g;b<n;++b)o[b]=o[b-h]+o[b-g]+c;
  26.     return(o[b-g]%n+k-h);
  27. default:
  28.     if(m1-=e) main(m1-g+e+h,s+g); else *(s+g)=f;
  29.     for(*s=a=f;a<e;) *s=(*s<<e)|main(h+a++,(char *)m1);
  30. }
  31. }


 
Commentaire des juges: "It is a good thing that K&R didn't use this version as the first C program!"
 :sol:


Message édité par el muchacho le 21-09-2004 à 21:32:03
Reply

Marsh Posté le 21-09-2004 à 23:05:00    

Taz a écrit :

quelque soit le langage, le premier programme qu'on écrit, c'est toujours HelloWorld


ah ok, je le saurai comme ça :)
toutsec le noob de la prog :p

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed