Şimdi Ara

C de enter a basmadan input alma

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
1.212
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
Öne Çıkar
0 oy
Sayfa: 1
Giriş
Mesaj
  • Merhabalar,
    c de integer olarak tanıttığım bi sayıya scanf le değer atıyorum her scanf ten sonra enter a basmak zorunda kalıyorum bunu bi döngü içerisinde her seferinde farklı değerler atadığım için de vakit kaybı oluyor.scanf te sadece rakama basıp enter a basmadan input değeri almanın bi yolu var mı acaba.vericeğim değerler 0-9 arasında olacak.



    _____________________________
  • Girdiğiniz değerleri , / - veya kendi belirlediğiniz bir karakterle ayırabilirsiniz fakat ayraç olarak girdiğiniz karakteri anlayıp değerleri ayıracak kodu yazmanız lazım.
    _____________________________
  • Aradığın şey bu olsa gerek.
    http://www.linuxquestions.org/questions/programming-9/how-do-i-scan-a-character-from-keyboard-without-the-user-having-to-press-enter-134966/
    #include <stdio.h> 
    #include <stdlib.h>
    #include <termios.h>

    static struct termios oldt;

    void restore_terminal_settings(void)
    {
    tcsetattr(0, TCSANOW, &oldt); /* Apply saved settings */
    }

    void disable_waiting_for_enter(void)
    {
    struct termios newt;

    /* Make terminal read 1 char at a time */
    tcgetattr(0, &oldt); /* Save terminal settings */
    newt = oldt; /* Init new settings */
    newt.c_lflag &= ~(ICANON | ECHO); /* Change settings */
    tcsetattr(0, TCSANOW, &newt); /* Apply settings */
    atexit(restore_terminal_settings); /* Make sure settings will be restored when program ends */
    }

    int main()
    {
    int ch;

    disable_waiting_for_enter();

    /* Key reading loop */
    while (1) {
    ch = getchar();
    if (ch == 'Q') return 0; /* Press 'Q' to quit program */
    printf("You pressed %c\n", ch);
    }

    return 0;
    }
    _____________________________




  • girdiden sonra enter gerektirmeyen char okuyan bir fonksiyon bulman lazim. windowsta conio.h dahilinde getch() fonksiyonu var. linux icin arastirmadim ama vardir mutlaka. sonra okudugun karakterden rakami cekersin.

    < Bu ileti mobil sürüm kullanılarak atıldı >
    _____________________________
  • Yapay Zeka’dan İlgili Konular
    CTRL+V ZAMANI !
    11 yıl önce açıldı
    A/C tuşu gerekli midir?
    6 yıl önce açıldı
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.