Hirdetés

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

  • kingabo
    őstag

    Értem már! Windows alatt ezt egy _flushall() megoldja, de Linux alatt nem ismeri, és ahogy nézem Google-ben, nem is létezik hasonló. Vagy igen?
    Egyelőre viszont akkor megoldottam úgy, hogy if(c!='\n'), ebbe ment a switch, utána pedig bekerült egy while(getc(stdin)!='\n'){}, így csak az első karakter marad.
    Nem szép és nem dolgoz fel több karaktert, hogy azt is visszajelezze hibás megadásként, de ezzel megkerültem a hibát. Persze jó kérdés mi lenne akkor, ha egy stringet kéne így feldolgoznom. Próbáltam átírni úgy, de valamiért minden karaktere a string-nek (null) lett. De erről még úgyis olvasok később, egyelőre egy karakter elég.

    Ahogy Jester01 ajánlotta sort olvass be, amit az atoi-val (ascci to int) alakíts át számmá és ennek az eredményét vizsgáld a switch-ben. Elötte persze ellenőrizni kell, hogy mit adott vissza az atoi: pl 11a esetén 11-t, a esetén 0-t (de 0 esetén is 0-t ad vissza, ami jó!), ilyenkor nyilván újra be kell kérni.

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