[C] Arrays definieren

rookie

Erfahrenes Mitglied
Hi,

in der Schule lernen wir gerade C zu programmieren in unserem Buch steht man soll die Felder / Arrays so definieren:

char wort[30][20];
wort[0][20] = 'bla';

..., aber MS Visual C++ meldet bei dieser Definition 3 Fehler.

könnt ihr mir da helfen ? Wo liegt der Fehler ?

thanx schon mal im voraus.
 
Abgesehen davon, dass 'bla' drei chars sind, du ein einer Zelle aber nur ein Zeichen speichern kannst und ein Array mit der Länge '20' von 0-19 geht: die Fehlermeldungen dienen dazu,den auftretenden Fehler zu erkennen...wenn du uns diese vorenthältst, dann müssen wir raten - nicht sehr zielführend.
 
Da Du Strings in Deinem mehrdimensionalen Array abspeichern willst, geht dies so nicht wie Du in Deinem Beispiel versucht hast.
Es ist möglich, das Array bei der Definition zu initialisieren. Dies würde so aussehen.
Code:
char wort[30][20] = { "bla", "blub", "blep" };
Willst Du später während der Laufzeit Felder ändern, so musst Du dies mit strcpy machen. So zum Beispiel:
Code:
strcpy(wort[0], "blip");
Wenn Du allerdings Arrays mit Zahlenwerte oder einzelnen Zeichen verwendest, dann ist es möglich diese dirket zu ändern.
Code:
	int zahl[4][4] ={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}};
	
	zahl[0][0] = 4;
	zahl[0][1] = 3;
	zahl[0][2] = 2;
	zahl[0][3] = 1;
 

Neue Beiträge

Zurück