Hirdetés

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

  • ITgoblin
    csendes tag

    Hali.

    A problémám a következő lenne.

    van egy menüm amit while ciklusban switch case-el kezelek. ha a menüpontot beüti a user, akkor elindítja a menünek megfelelő függvényt.
    2 menüm van, amiben a függvény először egy stringet bekér a felhasználótól - fordítás céljából - majd kiírja a fordítás eredményét.
    A gond viszont az, hogy a szöveg bekérésénél \n-ig olvas a függvényem, viszont azt hiszem, hogy a menüpont megadásakor benyomott enter miatt egyből tovább ugrik a függvényben lévő szövegbekérésen.
    valami ötlet hogy oldhatnám ezt meg? :-)

    Köszi

    SC

    Én anno egy Mozi jegykezelős feladatnál használtam menüt, ahogy te, én így oldottam meg:

    void menuVarakozik() {
    char be[15];
    do {
    getline(be);
    if ( be[0] == '1' )
    jegyElad();
    else if ( be[0] == '2' )
    jegyVisszavesz();

    } while(be[0] != 'q');
    }

    És a getline függvény:

    int getline(char s[]) {
    int c,i;

    i = 0;

    while ( (c = getchar()) != '\n' && c != EOF ) {
    s[i++] = c;
    }
    s[i] = '\0';
    return c == EOF ? c : i;
    }

    Mondjuk, ha tippelnem kéne, akkor nálad a beolvasással van baj.

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