Array unter c++ auslesen
-
Hallo, ich programmiere seit einiger Zeit mit Visual C++ 2008...
Ich wollte nun ein Array einbinden aber beim Auslesen gibt es nur fehler.int test1[4]={0,1,2,3};Hier nun ein kleines Array.
Zur Ausgabe ( ist eine Konsolenanwendung ) wollte ichprintf("%d", &test1[4]);benutzen, doch er gibt mir da nur sinnlose Zahlen aus.
Was mache ich falsch?
-
Wenn Du auf einen Wert in einem Array zugreifen willst dann fängst Du bei 0 an zu zählen. D.h. bei 4 Werten ist test1[3] Dein 4tes Element. In deinem Fall ist
test1[3] = 3.
-
Hm habe den Befehl geändert, jedoch gibt er mir den Wert : 5830972 aus.
Habe ich sonst irgendetwas falsch?
-
Ja, statt des Wertes gibst Du die Adresse, an der der Wert steht, aus.
-
Huhu,
'&' ist der Adressoperator. Das heißt:
printf("%d", &test1[3]);Gibst du die Adresse des 4. Elements aus.
Gib den Adressoperator weg und schon siehst du den Inhalt des 4. Elements.
Ein kleiner Merksatz:Arraygröße = 0 bis Arraygröße - 1
-
Ah wunderbar, danke euch

Noch eine Frage, wie kann ich den kompletten inhalt des Arrays auslesen?
-
In einer Schleife:
for ( int i = 0; i < GROESSE ; i++ ) { std::cout << arr[i] << ", " ; }
-
Naja hätte ich auch selber drauf kommen können;) Aber danke

Was ich noch mal fragen wollte, danach habt ihr auch eure Ruhe vor mir...:P
Hab unter Java mal n Befehl gesehen um einzelne Felder vom Array zu aktivieren und deaktivieren..Hab aber nichts gefunden. Geht das unter C++ überhaupt?
Mfg
-
Huhu,
sowas hab ich in C++ noch nie gesehen... wäre mir neu.
-
loli89 schrieb:
Naja hätte ich auch selber drauf kommen können;) Aber danke

Was ich noch mal fragen wollte, danach habt ihr auch eure Ruhe vor mir...:P
Hab unter Java mal n Befehl gesehen um einzelne Felder vom Array zu aktivieren und deaktivieren..Hab aber nichts gefunden. Geht das unter C++ überhaupt?
Mfgwäre mir auch unter java neu