Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Szőrös 
    veterán

    Azért nem működik így, mert az strstr() egy összefüggő rész-stringet keres meg az adott stringben, te pedig azt szeretnéd, hogy a megadott karaktereket külön-külön nézze meg, hogy benne vannak-e valahol a stringben, nem feltétlenül összefüggően és nem feltétlenül ugyanabban a sorrendben. Pl. ha "abc"-t keresel, azt az strstr() megtalálja az "aabcc"-ben, de nem találja meg az "aabbcc"-ben, mert ez utóbbinak az "abc" nem rész-stringje.

    Azt kell csinálnod, hogy egy ciklussal végigmész a restrictions[] karakterein, és mindegyikre megnézed, hogy benne van-e a name-ben az adott karakter.

    Szerk: lassú voltam :)

    Ahaaa, na talán kapizsgálom amit írtál. Köszi szépen, nekiesek majd és e szerint átírom :) Nem voltál lassú amúgy, elvi iránymutatást kértem azt megadtad, a fenti kódot még nem néztem meg. Majd ha nem sikerül megírnom akkor rálesek arra ;)

  • Szőrös 
    veterán

    Sziasztok, kis segítséget kérnék.
    Elkezdtem csak úgy érdeklődés szinten c-t tanulni mert érdekel. Az elején vagyok nagyon, gyakorlásképpen csináltam egy kis kódot:

    #include <stdio.h>
    #include <string.h>
    int main ()
    {
    const char name[20];
    const char restrictions[5] = "c";
    printf("Enter name: ");
    scanf("%s", name);

    if (strstr(name, restrictions) != NULL)
    {
    printf("Not a valid name!\n");
    } else
    printf("Name: %s\n", name);

    return 0;
    }

    Bekér egy nevet és megadott karakter esetén kiírja, hogy az nem megfelelő.Ezt szeretném tovább bővíteni úgy, hogy több nem megengedett karakter legyen. Úgy gondoltam ezt talán tömbbel lehet szóval a
    const char restrictions[5] = "a" sort átírtam így const char restrictions[5] = {'a', 'b', 'c'}
    na így viszont már nem igazán akar működni. Valaki tud elvi iránymutatást adni, hogy ez miért nem jó? Tömbbel már nem működik igy az strstr? Köszi

Új hozzászólás Aktív témák