2009-07-06 9 views
1

J'essaie de faire fonctionner le programme. Quand j'essaie Hello World dans le fichier projet/.cpp win32, je reçois beaucoup d'erreursErreurs de compilateur à partir du projet Visual C++ simple

1> ------ Construction démarrée: Projet: HelloWorld3, Configuration: Debug Win32 ------ 1> Compilation ... 1> hello.cpp 1> ... \ projets \ helloworld3 \ helloworld3 \ hello.cpp (7): erreur C2065: 'cout': identificateur non déclaré 1> ... \ projects \ helloworld3 \ helloworld3 \ hello.cpp (7): erreur C2001: newline dans la constante 1> ... \ projects \ helloworld3 \ helloworld3 \ hello.cpp (8): erreur C2143: erreur de syntaxe: manquant ';' avant 'retour' 1> Le journal de construction a été sauvegardé dans "fichier:/... \ Projets \ HelloWorld3 \ HelloWorld3 \ Debug \ BuildLog.htm" 1> HelloWorld3 - 3 erreur (s), 0 avertissement (s)

#include <iostream> 

int main() 
{ 


cout <<"Hello World!<<endl; 
return 0; 
} 
+0

Si vous avez une chance, vous devriez vraiment éditer votre question pour lui donner une meilleure ligne d'objet. "Visual C++" pourrait signifier n'importe quoi du tout. Cela ne rendra pas les gens désireux de le lire. –

+0

Mais, RichieHindle, j'espérais lui donner 15 minutes environ pour le faire tout seul ... –

+0

@John: Désolé, tu as raison, j'aurais dû donner à ee1234 plus de chance de le faire. – RichieHindle

Répondre

2

cout se trouve dans l'espace de noms "std", vous avez deux options:

  1. préfixe son utilisation avec std

    std :: cout < < "Bonjour tout le monde" < < std: : endl;

  2. déclare que vous utilisez l'espace de noms std

    using namespace std;

+0

Je l'ai fait, mais maintenant je reçois: erreur C2065: 'endl': erreur d'identificateur non déclaré – ee1234

+0

endl est également dans l'espace de noms std ... J'ai mis à jour ma réponse pour refléter cela. Essayez d'utiliser # 2 à la place, mettez "using namespace std;" près du haut de votre fichier et vous pouvez éviter de tout préfixer avec "std ::" –

+0

Cela a fonctionné. Je vous remercie. Quelqu'un peut-il me recommander une formation vidéo ou un livre? – ee1234

1

Vous devez utiliser std::cout et std::endl plutôt que cout et endl, ou faire après la #include:

using namespace std; 

La clause using rend votre code plus succinct, mais dans un grand programme il peut être difficile de garder une trace de l'origine des noms, donc il peut être préférable d'utiliser le plus verbeux mais plus explicite std::cout/std::endl.

vous manque aussi une citation de clôture ici:

cout <<"Hello World!<<endl; 

Vous devriez avoir:

cout << "Hello World!" << endl; 
0

Depuis Cout est présent dans l'espace de noms standard, vous devez soit inclure

using namespace std; 

au début de votre code, sous vos includes, ou utilisez std :: devant chaque appel de fonction. Lorsque vous placez un devis d'ouverture pour une chaîne, vous devez toujours inclure un devis de clôture. Il en résulte

std::cout << "Hello World!" << std::endl; 

Une autre façon d'écrire ce serait:

std::cout << "Hello World!\n"; 

Les résultats de \ n dans un nouveau flux en ligne.

1

ee1234.Voyant que c'était probablement votre premier programme C++, allez jeter un oeil à CPlusPlus.com il a un tutoriel assez simple et basique. C'est exactement là que j'ai commencé quand j'ai commencé en C++. En ce qui concerne les bons livres, faites simplement une recherche sur SO pour les 'Livres C++' et vous devriez avoir une pléthore de bons articles sur les livres débutants et avancés.

2

1> ... \ projects \ helloworld3 \ helloworld3 \ hello.cpp (7): erreur C2065: 'Cout': identificateur non déclaré

Ce que cela dit est qu'il ne fonctionne pas savoir ce qu'est cout. En C++, les noms peuvent être dans des espaces de noms. Dans le cas de cout il est dans l'espace de noms std. Vous pouvez dire au compilateur de regarder là-bas de 2 façons:

  • avec la ligne, using namespace std; cela indique au compilateur d'apporter tous les noms dans l'espace de noms std dans l'actuel.
  • en utilisant l'opérateur de résolution d'étendue ::. comme dans std::cout Ici vous dites au compilateur exactement où trouver le nom.

1> ... \ projects \ helloworld3 \ helloworld3 \ hello.cpp (7): erreur C2001: retour à la ligne en constante

Cette erreur indique que le compilateur est à la recherche à une constante , dans ce cas une chaîne, et il a trouvé une nouvelle ligne où il n'en attendait pas. C'est presque toujours une citation de fin manquant.

#include <iostream> 

int main() 
{ 
    std::cout << "Hello World!" << std::endl; 
    return 0; 
} 
Questions connexes