Add name sorting.
This commit is contained in:
1 parent
946d075c8e
commit
3b5d111351
1 file changed
+10
-1
@@ -8,6 +8,7 @@ static unsigned int numberOfNames = 0;
|
|||||||
|
|
||||||
static int findNameIdx(const char *name);
|
static int findNameIdx(const char *name);
|
||||||
static void removeNameByIdx(unsigned int idx);
|
static void removeNameByIdx(unsigned int idx);
|
||||||
|
static int compareNames(const void *arg1, const void *arg2);
|
||||||
|
|
||||||
// Fügt einen Namen hinzu. Im Fehlerfall (Archiv ist voll) soll 0, ansonsten 1 zurückgegeben werden.
|
// Fügt einen Namen hinzu. Im Fehlerfall (Archiv ist voll) soll 0, ansonsten 1 zurückgegeben werden.
|
||||||
// Ist der angegebene Name länger als die zulässige Namenslänge, wird der Name abgeschnitten hinzugefügt. Rückgabe ist dann 1.
|
// Ist der angegebene Name länger als die zulässige Namenslänge, wird der Name abgeschnitten hinzugefügt. Rückgabe ist dann 1.
|
||||||
@@ -66,10 +67,18 @@ void removeNameByIdx(unsigned int idx)
|
|||||||
numberOfNames--;
|
numberOfNames--;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int compareNames(const void *arg1, const void *arg2)
|
||||||
|
{
|
||||||
|
const char (*name1)[MAX_NAME_LEN] = arg1;
|
||||||
|
const char (*name2)[MAX_NAME_LEN] = arg2;
|
||||||
|
|
||||||
|
return strcmp(*name1, *name2);
|
||||||
|
}
|
||||||
|
|
||||||
// Sortiert die Namen im Archiv aufsteigend.
|
// Sortiert die Namen im Archiv aufsteigend.
|
||||||
void sortNames()
|
void sortNames()
|
||||||
{
|
{
|
||||||
|
qsort(names, numberOfNames, sizeof(names[0]), compareNames);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Gibt die Namen zeilenweise aus.
|
// Gibt die Namen zeilenweise aus.
|
||||||
|
|||||||
Reference in new issue
Block a user