Compilation gcc
djoe
-
Fred -
Fred -
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.
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++ !
#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++ !
zipe31
Messages postés
38797
Statut
Contributeur
6 433
Merci pour ces éclaircissements ;-))
Fred
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
Salut,
Je ne connais rien au C++, mais j'ai chopé ça sur ce site :
Le "include" pointe sur "iostream" et non "iostream.h", peut être ta source d'erreur ? ;-\
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 ? ;-\
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
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