Читање карактера
Dobrodošli, Gost. Molim vas prijavite se ili se registrujte.

Prijavite se sa korisničkim imenom, lozinkom i dužinom sesije

Linuxo Forumi

Stranice: [1]   Idi dole
  Štampaj  
Autor Tema: Читање карактера  (Pročitano 1710 puta)
0 članova i 1 posetilac pregledaju ovu temu.
burga
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 654


Meet Linus


WWW
« poslato: 14 Јун 2007, 21:46:06 »

Како да у С++-у учитам карактер који се унесе са тастатуре без да мора да кликне *ентер*?
Prijavi uredniku   Sačuvana

Нема Бога, и Дирак је његов пророк
http://www.burgic.com
LimitMan
Grand Maestro
Hero Member
*****
Na mreži Na mreži

Pol: Muškarac
Poruke: 917


Make It Easy...


WWW
« Odgovor #1 poslato: 15 Јун 2007, 00:03:34 »

Kod:
character-constant ::= [ L ] ' char-const-char '
char-const-char ::= normal-char | std-esc | "
normal-char ::= any character except ', ", \ or a newline
std-esc ::= \n               // newline           LF
      | \t                     // horizontal tab    HT
      | \v                     // vertical tab      VT
      | \b                     // backspace         BS
      | \r                     // carriage return   CR
      | \f                     // form feed         FF
      | \a                     // alert             BEL
      | \\                     // backslash         \
      | \?                     // question mark     ?
      | \'                     // single quote      '
      | \"                     // double quote      "
      | \ octal-code         // octal code        o, oo, ooo
      | \x hex-digit [ hex-digit ] ...   // hex code  xhh...
octal-code ::= octal-digit | octal-digit octal-digit
                 | octal-digit octal-digit octal-digit

znaci
Kod:
/n
Prijavi uredniku   Sačuvana

Svaki problem ima svoje resenje! Samo ga treba potraziti na pravom mestu!
Časlav Ilić
Full Member
***
Van mreže Van mreže

Pol: Muškarac
Poruke: 235



« Odgovor #2 poslato: 15 Јун 2007, 09:54:44 »

Citat: burga
Како да у С++-у учитам карактер који се унесе са тастатуре без да мора да кликне *ентер*?

Ovo je tip pitanja koji se često postavlja: kako da korisnik unese nisku sa razmacima, kao da se ne čeka na enter, kako da se prozor terminala ne zatvori čim se izvrši program, itd.

Ja ću pokušati da budem od manje, odnosno veće pomoći nego što tražiš, već kako zaključiš: uopšte ti ne treba odgovor na ovakva pitanja, nikad nemoj tako da primaš ulaz :) Posebno pod Linuksom, gde taj mali detalj sam po sebi krši nekoliko filozofskih doktrina.

Napiši šta tvoj program treba da radi, pa da vidimo kako bi bilo najbolje da prima ulaz.
Prijavi uredniku   Sačuvana
jboban
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 850



« Odgovor #3 poslato: 15 Јун 2007, 12:33:43 »

nikad nemoj tako da primaš ulaz Smiley Posebno pod Linuksom, gde taj mali detalj sam po sebi krši nekoliko filozofskih doktrina.
Mislim da ipak ima situacija kada je ovo neophodno, npr. kod izbora nekih opcija i kretanja kroz mini menije u konzoli. Praktičnije je ovako, nego unositi broj opcije pa svaki put potvrdjivati sa Enter. Svejedno, sačekaćemo da vidimo konkretnu potrebu pa ćemo predložiti rešenje.
Prijavi uredniku   Sačuvana
burga
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 654


Meet Linus


WWW
« Odgovor #4 poslato: 15 Јун 2007, 23:43:35 »

@LimitMan
Hvala, ali ja ne zelim da napisem novi red (sto mogu i sa endl, ne samo sa \n), ja hocu da ucitam karakter cim neko pritisne ista sa tastature, ne nuzno <Enter>

Npr. ako hocu da se nesto stampa na "p" a izadje na <Esc>, covek klikne na svoj izbor, a nisam bas vidjao programe gde posle svake precice valja pritisnuti <Enter>. To sam vec radio u Borlandu, ali je on imao svoje ne-ISO funkcije "keypressed()" koja je super za prekidanje while ciklusa, a vise se ne secam koja bese bas za citanje karaktera, bilo je to ipak pre 5-6 godina. Samo se secam da sam se u to vreme spremao da predjem na Linux i nervirao se sto nije deo standarda.
Prijavi uredniku   Sačuvana

Нема Бога, и Дирак је његов пророк
http://www.burgic.com
LimitMan
Grand Maestro
Hero Member
*****
Na mreži Na mreži

Pol: Muškarac
Poruke: 917


Make It Easy...


WWW
« Odgovor #5 poslato: 15 Јун 2007, 23:50:28 »

Mozda ti pomaze ovako nesto ...
http://answers.google.com/answers/threadview?id=197514
Prijavi uredniku   Sačuvana

Svaki problem ima svoje resenje! Samo ga treba potraziti na pravom mestu!
Časlav Ilić
Full Member
***
Van mreže Van mreže

Pol: Muškarac
Poruke: 235



« Odgovor #6 poslato: 16 Јун 2007, 00:04:35 »

Sad, ako baš hoćeš program sa tekstualnim sučeljem, umesto uobičajenog filterskog programa školjke, onda je verovatno najbolje rešenje upotreba bibliotke ncurses (http://en.wikipedia.org/wiki/Ncurses). Nisam lično piskarao takve programe, ali ono što sam od njih video obično je zasnovano na ovoj biblioteci, i ima gomila uputstava po netu.

Dopuna: Odličan primer bi bio jedini program za učenje slepog kucanja koji nije uspeo da me iznervira u roku od pola sata, i pomoću kojeg sam i naučio slepo kucanje, GNU Typist. Njegovo nenametljivo i efikasno tekstualno sučelje i jednostavan sistem napretka u vežbama, delovalo je na mene potpuno zarazno, kao igru da igram...
« Poslednja izmena: 16 Јун 2007, 00:21:04 od Časlav Ilić » Prijavi uredniku   Sačuvana
Stranice: [1]   Idi gore
  Štampaj  
 
Prebaci se na: