Case sensitiv - Sortieren mit Klein- & Großbuchstaben.

Davicito

Erfahrenes Mitglied
Hat jemand eine Ahnung, bzw. einen Beispielcode, wie man Wörter sortieren kann, egal ob das Wort mit Großebuchstaben oder Kleinebuchstaben anfangen?

Mein Sortierungs-Alg. funktioniert nur mit Kleinbuchstaben:
C:
...
//Bubblesort
while(i <= list->nodeCounter*2)
	{
		while(kopf != (aktl_Elem = aktl_Elem -> left) && aktl_Elem -> left -> content != NULL)
		{
		  		
			string1 = (char*) aktl_Elem -> content;		//Wort des aktuellen Elements
			string2 = (char*) aktl_Elem -> left -> content; //Wort des lenken Elements
								

			if(strcmp(string1, string2) > 0)
			{					
				//Inhalt aus Knoten sichern
				tmpString = aktl_Elem -> content;
				tmpZahl = aktl_Elem -> lineCounter;
				//Inhalt des rechten Nachbarn noch vorne schieben
				aktl_Elem -> content = aktl_Elem -> left -> content;
				aktl_Elem -> lineCounter = aktl_Elem -> left -> lineCounter;
				// gesicherten Inhalt im rechten Nachbar platzieren
				aktl_Elem -> left -> content = tmpString;
				aktl_Elem -> left -> lineCounter = tmpZahl;
			}			
		  
		}
		i++;		
	}	
...

Gruß.
 
Cool, danke.. wusste garnicht das es diese Funktion in string.h gibt. Hätte jetzt aufwändiger gedacht, mit ASCII-Zeichen abfragen und dann die Dezimalstellen auf die Kleinbuchstaben hochtranzformieren und so

Vielen Dank Dir.
 
Auch das wäre nicht schwer:
C:
char toUpper(char c)
{
	if(isalpha(c))
		c &= ~0x20;
	return c;
}

char toLower(char c)
{
	if(isalpha(c))
		c |= 0x20;
	return c;
}

Gruss
Muepe
 
Zurück