Wo liegt hier der Fehler??



  • Ich weiss echt net, was hier dran falsch is..
    Is son Musterprogramm, aber läuft irgendwie net! Vielleicht kann mir ja jmd helfen! *thx*
    sascha

    1: /* qsort() und bsearch() für Strings verwenden. /
    2:
    3: #include <stdio.h>
    4: #include <stdlib.h>
    5: #include <string.h>
    6:
    7: #define MAX 20
    8:
    9: int vergl(const void *s1, const void *s2);
    10:
    11: int main(void)
    12: {
    13: char *daten[MAX], puffer[80], *zgr, *suche, **suche1;
    14: int count;
    15:
    16: /
    Eine Liste von Wörtern einlesen. /
    17:
    18: printf("Geben Sie %d Wörter ein.\n",MAX);
    19:
    20: for (count = 0; count < MAX; count++)
    21: {
    22: printf("Wort %d: ", count+1);
    23: fgets(puffer,80,stdin);
    24: puffer[strlen(puffer)-1] = 0;
    25: daten[count] = malloc(strlen(puffer)+1);
    26: strcpy(daten[count], puffer);
    27: }
    28:
    29: /
    Sortiert die Wörter (oder besser die Zeiger). /
    30:
    31: qsort(daten, MAX, sizeof(daten[0]), vergl);
    32:
    33: /
    Die sortierten Wörter ausgeben. /
    34:
    35: for (count = 0; count < MAX; count++)
    36: printf("\n%d: %s", count+1, daten[count]);
    37:
    38: /
    Einen Suchbegriff einlesen. /
    39:
    40: printf("\n\nGeben Sie einen Suchbegriff ein: ");
    41: fgets(puffer,80,stdin);
    42: puffer[strlen(puffer)-1] = 0;
    43:
    44: /
    Führt die Suche durch. suche1 wird zum Zeiger /
    45: /
    auf den Zeiger auf den Suchbegriff./
    46:
    47: suche = puffer;
    48: suche1 = &suche;
    49: zgr = bsearch(suche1, daten, MAX, sizeof(daten[0]), vergl);
    50:
    51: if (zgr != NULL)
    52: printf("%s gefunden.\n", puffer);
    53: else
    54: printf("%s nicht gefunden.\n", puffer);
    55: return(0);
    56: }
    57:
    58: int vergl(const void *s1, const void *s2)
    59: {
    60: return (strcmp(
    (char **)s1, *(char **)s2));
    61: }



  • Big1one1 schrieb:

    Wo liegt hier der Fehler??

    ...ist ein schlechter Threadtitel.

    Big1one1 schrieb:

    läuft irgendwie net!

    ...ist keine ausreichende Fehlerbeschreibung.

    Code-Tags statt Zeilennummern wären auch gut gewesen.

    Bei mir läuft das Programm übrigens.


Anmelden zum Antworten