diff --git a/du5/program.c b/du5/program.c index 4fac4b6..4ddbb8c 100644 --- a/du5/program.c +++ b/du5/program.c @@ -1,18 +1,26 @@ #include #include +#include +#include int main(){ + struct pollfd mypoll = { STDIN_FILENO, POLLIN|POLLPRI }; char name[50][50]; int score[50]; int pos = 0; //Getting input while(1){ - scanf("%d %[^\n]", &score[pos], name[pos]); - scanf("%*c"); - pos++; - int tmpCh = getc(stdin); - if(tmpCh == '\n') break; - ungetc(tmpCh, stdin); + if( poll(&mypoll, 1, 2000)){ + scanf("%d %[^\n]", &score[pos], name[pos]); + scanf("%*c"); + pos++; + int tmpCh = getc(stdin); + if(tmpCh == '\n') break; + ungetc(tmpCh, stdin); + } + else{ + break; + } } char newName[50][50];