2016-03-30 7 views
-5

Ich versuche, einzelne Werte aus einem Array zu ziehen und sie in Text zu setzen, aber immer wieder mit Syntaxfehlern zu laufen.Wie drucke ich einen einzelnen Wert aus einem Array in Text?

#include <iostream> 
#include <ostream> 
using namespace std; 
// PV, PM, FUE, RAP, PRE, SAB, ESP 
int luch_bas [7] = {6,3,5,3,2,1,2}; 

int main() 
{ cout << "Tiene los atributos siguientes: \n"; 
    cout << "Puntos de Vida (PV)... " luch_bas[0] "\n"; 
    cout << "Puntos de Magia (PM)..." luch_bas[1] "\n"; 
    cout << "Fuerza (FUE) ..." luch_bas[2] "\n"; 
    cout << "Rapidez (RAP) ..." luch_bas[3] "\n"; 
    cout << "Precisión (PRE) ..." luch_bas[4] "\n"; 
    cout << "Sabiduría (SAB) ..." luch_bas[5] "\n"; 
    cout << "Espíritu (ESP) ..." luch_bas[6] "\n"; 
} 

Das Fehlerprotokoll, das ich bekomme, ist "erwartet"; vor 'luch_bas' ", aber ich bin mir nicht ganz sicher, wo die Vermissten sind; soll gehen? Ich bin mir sicher, dass es einen viel besseren Weg gibt, das zu programmieren; Ich lerne noch.

+4

Sie die Ausgabe falsch: Es sollte 'cout sein << "etwas" << luch_bas [N] << '\ n';' – ForceBru

+1

Sie müssen von vorne anfangen, wenn Sie nicht wissen, wie man Variablen zu Strömen ausgibt, fast haben alle Bücher und Tutorien dieses als eines ihrer frühesten Beispiele. [Siehe z.B. hier für eine gute Liste von Anfängerbüchern] (http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list). –

Antwort

3

versuchen, diese

int main() 
    { cout << "Tiene los atributos siguientes: \n"; 
     cout << "Puntos de Vida (PV)... \t" << luch_bas[0]<< "\n"; 
    ... 
    } 
+0

Ah! Vielen Dank für die Klärung der Fehler dieses Lerners ~ –

+0

@ NoahHoppe-McQueen, Kein Problem. Wir waren alle einmal dort. – Samer

0

es sein sollte:

cout << "Tiene los atributos siguientes: \n"; 
cout << "Puntos de Vida (PV)... " << luch_bas[0] << endl; 
cout << "Puntos de Magia (PM)..." << luch_bas[1] << endl; 
cout << "Fuerza (FUE) ..."  << luch_bas[2] << endl; 
cout << "Rapidez (RAP) ..."  << luch_bas[3] << endl; 
cout << "Precisión (PRE) ..."  << luch_bas[4] << endl; 
cout << "Sabiduría (SAB) ..."  << luch_bas[5] << endl; 
cout << "Espíritu (ESP) ..."  << luch_bas[6] << endl; 
0

Verwendung mehr "Streaming" Betreiber

#include <iostream> 
#include <ostream> 
using namespace std; 
// PV, PM, FUE, RAP, PRE, SAB, ESP 
int luch_bas [7] = {6,3,5,3,2,1,2}; 

int main() 
{ cout << "Tiene los atributos siguientes: \n"; 
    cout << "Puntos de Vida (PV)... " << luch_bas[0] << "\n"; 
    cout << "Puntos de Magia (PM)..." << luch_bas[1] << "\n"; 
    cout << "Fuerza (FUE) ..." << luch_bas[2] << "\n"; 
    cout << "Rapidez (RAP) ..." << luch_bas[3] << "\n"; 
    cout << "Precisión (PRE) ..." << luch_bas[4] << "\n"; 
    cout << "Sabiduría (SAB) ..." << luch_bas[5] << "\n"; 
    cout << "Espíritu (ESP) ..." << luch_bas[6] << "\n"; 
} 
2

Das Fehlerprotokoll ich erhalte ‚wird„zu erwarten; " vor 'luch_bas' ", aber ich bin mir nicht ganz sicher, wo die Vermissten sind; soll gehen?

Sie möchten nicht eine ; setzen, wie die Fehlermeldung suggeriert. Sie möchten die Aufrufe des Ausgabeoperators jeweils verketten.

Die std::ostream& operator<<(std::ostream& os, Type t) gibt eine std::ostream& Referenz zurück, wie Sie sehen können.

Der richtige Weg zur Kette ist die operator<<() Anrufe:

cout << "Puntos de Vida (PV)... " << luch_bas[0] << "\n"; 
           // ^^    ^^ 
Verwandte Themen