Compilation gcc

Fermé
djoe - 17 juil. 2011 à 11:00
 Fred - 17 juil. 2011 à 18:12
Bonjour,

Bonjour je debute en programation voici mon code source des plus basique qu'il soit. Le fameux "bonjour".

#include <iostream.h>

int main()

{
cout << "bonjour !\n";
return 0;
}
Lorsque je compil je reçois ce type d'erreur,

"bonjour.cpp:1:22: error: iostream.h: Aucun fichier ou dossier de ce type
bonjour.cpp: In function `int main()':
bonjour.cpp:6: error: `cout' was not declared in this scope
"
Dans un premier temps j'ai controlé voir si ma librairie isotream.h etais présente et c'est le cas.
Mon mini programe est bien ecrit le compilateur fonctionne car il renvoie un message d'erreur donc j'avoue ne pas comprendre ce qu'il ce passe .
Avez-vous des suggestion ?

Ps : j'utilise le bouquin starter programation en c++ des edition campuspress pour décbuter.




4 réponses

Il y a differentes choses

#include <iostream.h>

En c++ on ne met pas le .h, donc tu peux te limiter a

#include <iostream>

int main()
{
cout << "bonjour !\n";
return 0;
}

le "cout" n' est pas utilisable tel quel, il fait partie d' un ensemble qu' on appelle std, ca permet donc de ne pas le confondre avec d' autres qui ne ferait pas partie de cet ensemble de fonctions, ces ensembles on les appelle des "namespaces"
De plus, on préfère "std::endl" a la place du "\n" en c++, en effet celui ci gère les différentes architectures ou le \n ne signifie pas forcement un retour a la ligne
donc il faut faire

std::cout << "bonjour!" << std::endl;

Et enfin derniere chose, et je pense la plus importante, on utilise gcc pour le c, :P
et oui ^^ pour le c++ on prefere g++ !
1
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 418
17 juil. 2011 à 12:28
Merci pour ces éclaircissements ;-))
0
tu es la toute premiere personne que j' aide sur ce site :) je pensais pas avoir les connaissances pour ! c' est emouvant ! merci a toi alors
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 418
17 juil. 2011 à 11:49
Salut,

Je ne connais rien au C++, mais j'ai chopé ça sur ce site :

$ cat hello.c
// my first program in C++

#include <iostream>
using namespace std;

int main ()
{
  cout << "Hello World!";
  return 0;
}

$ g++4.2 hello.c -o hello

$ ./hello
Hello World!

Le "include" pointe sur "iostream" et non "iostream.h", peut être ta source d'erreur ? ;-\
0
Je vous remercie pour vos réponse effectivement rajoutant std et suprimant le \n tous fonctionne .

Je comprends aussi quez j'utilise un bouquin qui commence a daté et n'a plus de raison d'etre avec la version du compilateur que j'utilise .Ce sont des petit changment qui risque d'etre embetant par la suite si je ne me mets pas à jour rapidement.

Merci à toi zipe malgrés ton manque de savoir tu as pris la peine de m'aider c'est cool :)

Merci fred je cerne beaucoup mieux mon souci et grace a toi j'ai pigé bonne continuation @bientôt
0
si tu veux une bonne formation, il y a le "site du zero", c' est pas trop mal quand on est néophyte !
0