我试图在我的C代码中使用posix函数isatty(),以判断输出是否被重定向然而,要做到这一点,我需要一个文件描述符,从我的研究来看,fileno()不再包含在stdio.h中有没有其他方法来获取文件描述符?

最佳答案

如果只想知道输出是否被重定向,可以使用:

#include <unistd.h>
...
if (isatty(STDOUT_FILENO))
  error("redirect output.");

STDOUT_FILENO通常为1。

10-08 06:55