2016-03-22 22 views
-1

döngü içinde sonsuz bir döngü olduğunu ve kullanıcının tamsayı formunda veri girmesini istiyorum. Daha sonra veri başka bir amaç için başka bir işleve aktarılacak, bu süreç kullanıcı veriyi esc veri girişine kadar devam edecek ve bu noktada döngüün kopmasını istiyorum. Bunu nasıl yapmalıyım? ben ben olmasını istemiyoruz döngünün çıkar veri girişi olarak esc ait ASCII değerini koyarsanız başka-ama eğerbir döngüden çıkış olarak esc'i kullanıcı olarak girerek çıkıştan çıkın

while(1) 
{ 
    printf("enter the data that need to entered\npress esc to exit\n"); 

    scanf("%d",&n); 

    function(n); 
} 

i kullanmaya çalıştı?

Yapabileceğiniz en iyi şey, bir özel oluşturmaktır uygun GetAsyncKeyState (seçmek için Windows ve Linux için #IFDEF kullanacaktır "GetAsyncKeyState" fonksiyonu) veya eşdeğeri:

cevap

0

gibi dingrite onun diğer cevap yazdı .

İstenilen sonuca ulaşmak için başka bir yol bulunmuyorsa, sinema yaklaşımının sorunları vardır - uygulama odakta olmalıdır. C++: execute a while loop until a key is pressed e.g. Esc?

Yoksa başka bir sayfada bu yardımcı olur

#include <stdio.h> 

int main (void) 
{ 
    int c; 

    while (1) { 
     c = getchar();   // Get one character from the input 
     if (c == 27) { break; } // Exit the loop if we receive ESC 
     putchar(c);    // Put the character to the output 
    } 

    return 0; 
} 

Umut bulundu bu örnekle deneyebilirsiniz:

bu soruya bir göz atın.

İlgili konular