標準/拡張機能 | C/C++ | 依存項目 |
---|---|---|
POSIX.1 |
両方 |
#define _POSIX_SOURCE
#include <unistd.h>
char *ttyname(int fildes);
指定されたファイル記述子、fildes と関連した端末の パス名を含むストリングを戻します。戻されたポインターが静的データを指すことがあるので、ttyname() への 以降の呼び出しによって、このストリングが上書きされることがあります。
正常に実行された場合、ttyname() はパス名が入っている ストリングを戻します。
fildes が端末でないか、あるいは パス名を判別できなかったので正常に行われなかった場合には、ttyname() は NULL ポインターを戻します。
⁄* CELEBT16
This example provides the pathname of the terminal
associated with stdin.
*⁄
#define _POSIX_SOURCE
#include <unistd.h>
#include <stdio.h>
main() {
char *ret, tty[40];
if ((ret = ttyname(STDIN_FILENO)) == NULL)
perror("ttyname() error");
else {
strcpy(tty, ret);
printf("The ttyname associated with my stdin is %s¥n", tty);
}
}
The ttyname associated with my stdin is /dev/ttyp0000