Question de noob en C++ (vraiment noob, peut pas faire plus noob)

Répondre
Partager Rechercher
Voila, j'utilise Dev-C++ et je viens de trouver ce site pour débuter:
http://www.cplusnul.com/

Voici le copier coller d'un des codes du site (le premier code):

Citation :
#include <iostream.h>
#include <stdio.h>

void main()
{


cout<<"Hello World!";


}
Cela ne marche pas lol.

Heureusement le compilateur me conseille de mettre int main() au lieu de void main() et la ça marche.

Ma question est la suivante, le site est pourri? Si oui auriez vous dans vos bookmark un meilleur site pour les noobzors de mon espèce
Merci

Message supprimé par son auteur.
Me semble que c'est à cause de Dev c++, qui n'aime pas du tout le type void pour le main, à l'inverse de quasiment tous les autres compilos (qui considère ça comme un "warning" et none un erreur).

Le code est pas faux, c'est juste pas fait sous Dev C++, qui est un peu strict sur certains points.
Citation :
Publié par Dankin
Voila, j'utilise Dev-C++ et je viens de trouver ce site pour débuter:
http://www.cplusnul.com/

Voici le copier coller d'un des codes du site (le premier code):


Cela ne marche pas lol.

Heureusement le compilateur me conseille de mettre int main() au lieu de void main() et la ça marche.

Ma question est la suivante, le site est pourri? Si oui auriez vous dans vos bookmark un meilleur site pour les noobzors de mon espèce
Merci

Je croyais que le code que tu avais était néanmoins bon, mais bon, un pti coup de copier coller et de g++ indique en effet que la fonction main doit renvoyer un entier...

Surement pour indiquer un code d'erreur de plantage de l'appli... Si qqn s'y connait ca m'interesse
Pourtant sur le site en question il conseille de DL Dev C++ lol .
Enfin bref .
Mici pour l explication , je ne comprennait pas pourquoi il ne voulais pas du void étant donné que l'on ne veux rien renvoyer ( a vrai dire c est toujours flou mais plus clair, plus moins flou quoi .
alors tu fais du c ou du c++ ?

parcequ'il ne faut pas faire #include <iostream.h> mais #include <iostream>

ala

ensuite ton stdio tu peut te le garder, c du C et non du C++

et pour le main normalement c'est int main( int argc, char ** argv) avec un return à la fin du main.
Citation :
Publié par Dolanor
Surement pour indiquer un code d'erreur de plantage de l'appli... Si qqn s'y connait ca m'interesse
C'est en effet pour ça.
En principe, un programme devrait toujours renvoyer une valeur pour indiquer si il s'est bien terminé, et dans le cas contraire, indiquer quel type d'erreur il a rencontré.

Mais bon, ça reste souvent du "en principe"
je serais toi je ferais "Hello!\n" ou encore plus propre : std::cout << "hello" << std::endl Sinon tu vas pas le voir avec ta console. Pour la valeur de retour l'int sert pour la gestion d'erreur dans bcp de cas mais vu qu'il y a d'autres moyen de le faire quand tu as un prog evolué que bon ...
Je ne suis pas sûr que ça soit vraiment du C++, contrairement à ce que peut dire ton site. Il semblerait plutôt que ça soit un vague mélange entre du C et du C++.

Comme le disait justement TheTralalaTouch, en C++ un "#include <iostream>" suffit. Après, il me semble qu'il faut préfixer l'objet "cout" par "std::" puisque l'objet est déclaré dans un espace de nom.

Au final, personnellement j'aurais plutôt écrit :

Code:
#include <iostream>

int main()
{
std::cout << "Hello World !" << std::endl;
return 0;
}
PS : "endl" est l'objet fin de ligne, par habitude je le mets à chaque fois ce qui hésite que le prompt de la console se mette juste après le dernier message affiché par le programme.
Tout dépends du compilateur les gens..

Par exemple
Code:
#include <iostream.h>

void main()
{
cout << "Hello World !" << endl;
}
Passe sans erreur ni warning sous Visual C++ 6.0
Citation :
Publié par Erkethan
Tout dépends du compilateur les gens..

Par exemple
Code:
#include <iostream.h>

void main()
{
cout << "Hello World !" << endl;
}
Passe sans erreur ni warning sous Visual C++ 6.0
en meme temps, VS6.0 est une reference en matiere de standards ....
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés