Übergabe von 2 dimensionales Array

Das mit der Übergabe ans up hab ich mal so weit hinbekommen.
Code:
char eingabe[20][20]; 
void tausche(char szEingabeA[],char szEingabeB[]); 
 void sortieren(char zEingabe[][20]);
void main()
{
	int i;
	
	for (i = 0;i < 5;i++)
	{
		gets(eingabe[i]);
	}

	sortieren(eingabe);
	

	
	

	getch();


	//to do
}

void sortieren(char szEingabe[][20])  
{  	
int i,j,m;  	  	
for (i = 0; i < 5; i++)  	{  		
cout << szEingabe[i] << endl;  	}
Jetzt nur noch das problem wie ich die eingetragenen Elemente zähle(nur um wieder zum Topic zurückzukehren)
Wenn einer Rat weiß, bitte hilfe
 
Ich hätte da zwei Ideen:
Die erste:
Du verwendest einfach eine Zählvariable für die Anzahl der Strings
Code:
char eingabe[20][20]; 
char anz = 0;
...
gets(eingabe[i]);
anz++;
oder etwas änliches.
Die zweite:
Du initialisierst dein Array am Anfang mit Nullen(oder Anderen Zeichen, die bei den eingaben nicht vorkommen [dürfen]). Dann schreibst du selbst eine funktion, die dir die anzahl der Strings zurückgibt:
Code:
;
int i;
for(i = 0; i < 20; i++) {
	eingabe[i][0] = 0;
}
...
int eingabe_len()
{
	int i, anz;
	
	for(i = 0, anz = 0; i < 20; i++) {
		if(eingabe[i][0])
			anz++;
	}
	
	return anz;
}

Oder, wenn du C++ kannst, kannst du auch std::vector statt des Arrays nehmen
(für nähere Informationen schau im MSDN oder frag den Kachelator :-) )
 
Mir is vorher diese Idee etwas pfuschhaft gekommen jetzt dank dir hast du sie vervollständigt. Jetzt sollts klappen. Abgesehen davon, per strlen wie bei 1 dimensionalen Arrays gehts allem Anschein nach nicht oder?
 
*Lol* das wollt ich nicht wissen. Ich wollt die Anzahl der eingelesenen Wörter per strlen zählen. Ich weis dass ich per strlen(eingabe[ i ]) das feld in die x-koordinate Zählen kann aber ich will es in Richtung y- Koordinate - sozusagen die Anzahl der Wörter *manichwiderholmich*. Das will ich wissen ob das geht. Daher auch der Vorschlag von frager das Array mit NULL zu initialisieren und durchlaufen bis eingabe[ i ][0] false zurückliefert.
 
Zurück