Fichier en tete c++ linux

bonjour a tous,

je suis sur linux debian et j'essai de lancer des programme c++ qui sont dans mes livres de cours.

Donc je créer par exemple le fichier "bonjour.c" :

#include <iostream.h>

void main(void)
{
cout << "bonjour";
cout << "appuyer sur une touche pour continuer",
getchar();
}

apres cela j'essai de le compiler gcc bonjour.c , mais la il me dit qu'il ne connait pas iostream ni les << .

donc voila ma question, est que iostream.h existe sur linux et avez vous une idee du probleme que j'ai, merci?

je suis sur debian sarge

5 réponses

  1. Bonjour , il faut que tu precises le namespace std ou alors tu fais appel à cout de cette façon std::cout

    #include <iostream.h>
    using namespace std;

    void main(void)
    {
    cout << "bonjour";
    cout << "appuyer sur une touche pour continuer",
    getchar();
    }
    1. Contributeur
      Salut;
      pour completer, je peux préciser que ça depend de la version du compilateur. Sur les compilo assez vieux il n'y a pas besoin de preciser std:: (gcc 2.8) et il acceptent iostream.h
      sur les plus recent, il faut mettre std:: (ou "using...") et iostream.h renvoie une erreur. En effet, maintenant il faut inclure la balise iostream sans le .h :
      #include <iostream>
      ou si tu tiens vraiment à ton .h, tu peux de&ctiver l'erreur en ajoutant l'option"-Wno-deprecated" à la compilation.
      derniere possibiliter, est-tu sur de compiler en C++?
      1. Contributeur
        Un simple
        #include <stdio.h>
        

        peut faire l'affaire aussi il me semnble,
        e, tout cas faute de frappe ou non, il faut que tu mette un ';' et non un ',' à la fin de ton deuxieme "cout << .."
        C'est peut etre pour cela qu'il fait l'erreur...

        ++
        1. Contributeur
          non, pour utiliser les cout<< il faut <iostream>.
          <stdio.h> c'est pour printf, et tout le C classique
          1. #include <iostream.h>
            int main(void) { 
            cout << "bonjour "<< endl; 
            cout << "appuyer sur une touche pour continuer"; 
            getchar(); 
            return 0;
            } 
            

            Pour compiler je parie que tu fais gcc lol.c
            essaie avec g++ :
            g++ -Wno-deprecated lol.c