SORU
21 AĞUSTOS 2009, Cuma


Eğer stdin C/C /Qt terminal veya bir boru olup olmadığını algılamak?

""Bağımsız değişkeni ile terminale kadar Python etkileşimli kabuk getiriyor. python öldürdüğümde ...

"Etkileşimli terminal modunu başlatmak değil. cat | python öldürdüğümde ... Bir şekilde, herhangi bir giriş olmadan, bir boru bağlı olduğunu tespit etti.

Nasıl C veya C veya Qt benzer bir tespit yapayım?

CEVAP
21 AĞUSTOS 2009, Cuma


Kullanım isatty:

#include <stdio.h>
#include <io.h>
...    
if (isatty(fileno(stdin)))
    printf( "stdin is a terminal\n" );
else
    printf( "stdin is a file or a pipe\n");

(Alt çizgi ile öneki onlar windows: _isatty, _fileno)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BiGSH0TROB

    BiGSH0TROB

    7 NİSAN 2011
  • EmmightySofia

    EmmightySofi

    25 EYLÜL 2011
  • RogerBuckChrist

    RogerBuckChr

    9 Temmuz 2011