2012-09-03 5 views
7

मैंने विंडोज़ पर यह सरल कार्यक्रम लिखा था। चूंकि विंडोज़ में कॉनियो है, यह ठीक काम करता है।मैं इस कार्यक्रम को शंकु से शाप तक कैसे पोर्ट करूं?

#include <stdio.h> 
#include <conio.h> 

int main() 
{ 
    char input; 

    for(;;) 
    { 
     if(kbhit()) 
     { 
      input = getch(); 
      printf("%c", input); 
     } 
    } 
}  

अब मैं लिनक्स के लिए यह बंदरगाह के लिए चाहते हैं, और शाप/ncurses यह करने के लिए सही तरीके से की तरह लगता है। मैं उन पुस्तकालयों का उपयोग कोंओओ के स्थान पर कैसे करूँगा?

उत्तर

9
#include <stdio.h> 
#include <ncurses.h> 

int main(int argc, char *argv) 
{ 
    char input; 

    initscr(); // entering ncurses mode 
    raw();  // CTRL-C and others do not generate signals 
    noecho(); // pressed symbols wont be printed to screen 
    cbreak(); // disable line buffering 
    while (1) { 
     erase(); 
     mvprintw(1,0, "Enter symbol, please"); 
     input = getch(); 
     mvprintw(2,0, "You have entered %c", input); 
     getch(); // press any key to continue 
    } 
    endwin(); // leaving ncurses mode  
    return 0; 
} 

जब अपने कार्यक्रम का निर्माण मत भूलना

gcc -g -o sample sample.c -L lncurses 

और जीसीसी के लिए ncurses lib (एल lncurses) ध्वज के साथ लिंक करने के लिए here आप kbhit() लिनक्स के लिए कार्यान्वयन देख सकते हैं।

+0

धन्यवाद, यह वही है जो मुझे चाहिए था। –

+0

आप हमेशा स्वागत करते हैं। –

0

ncurses इंस्टॉल करें और बस <ncurses.h> शामिल करें।

ncurses this स्थापित करने में मदद मिलेगी।

+0

kbhit() मौजूद नहीं प्रतीत होता है, या क्या मैं कुछ गलत कर रहा हूं? –

+0

मुझे यकीन नहीं है कि kbhit() ncurses में लागू किया गया है। – Jeyaram

संबंधित मुद्दे