Yakalama girin basılması için beklemeden standart girişten bir karakter
Asla benim için bu kadar seyrek geliyor çünkü bunu nasıl yaptığımı hatırlamıyorum. Ama C veya C , ne bir yeni satır (enter tuşuna basın) bekleme olmadan standart girişten bir karakter okumak için en iyi yoldur.
İdeal ekranına giriş karakteri echo olmaz da. Ben sadece etkileyen bir konsol ekranı ile tuş vuruşlarını yakalamak istiyorum.
CEVAP
Bu çok terminal olan stdin (genellikle satır tamponlu) ile bağlantılı olabilir kullanılan bağlıdır, çünkü mümkün olan saf C portably değil. Ancak bunun için bir kütüphane kullanın:
- conio windows ile kullanılabilir faydalı olabilir. 0 ** işlevi için enter tuşuna beklemeden bir karakter vermek için kullanın. Sık sık windows bir geliştirici değilim, ama arkadaşlarım sadece
conio.h
vardır ve bunu kullandığını görmüştüm. Vikipedi conio.h bkz. İtiraz Visual C ilan edilengetch
, listeler . - küfürler linux uyumlu küfürler uygulamaları için windows için de kullanılabilir. Ayrıca
getch
bir işlevi vardır. (man getch
kılavuz görmek için deneyin). Vikipedi Curses bkz.
Eğer çapraz platform uyumluluğu için amaç eğer küfürler kullanmanızı tavsiye ederim. Dedi ki, eminim orada fonksiyonları kullanabileceğiniz off line tampon (sanırım onun adı "raw modu" karşıt olarak, "pişmiş modu" (bak içine man stty
)). Küfürler, eğer yanlışım yoksa taşınabilir bir şekilde sizin için halledebilirim.
Nasıl bir karakter yerine Vim bir yeni...
İçin karakter HTML görüntülemek için y...
Standart bir fonksiyon JavaScript null...
Java nasıl bir dize bir karakter dönüş...
Java'da bir dosya kopyalamak için stan...