ttyname()

Получить полный путь к файлу

Прототип:

#include <unistd.h>
char * ttyname( int fildes );

Аргументы:

fildes
Дескриптор файла, по которому необходимо получить имя.

Библиотека:

libc

Описание:

Функция ttyname() возвращает указатель на стаический массив, содержащий полный путь, связанный с файлом, для которого существует файловый дескриптор fildes.

Возвращаемое значение:

Указатель на полный путь для fildes.

Если возникла ошибка функция возвращает NULL, код ошибки записывается в errno.

Коды ошибок:

EAGAIN
Драйвер устройства использовался другим процессом, или драйвер не смог выполнить запрос из-за невыполненной команды.
EBADF
Некорректный аргумент fildes.
EINTR
Функция была прервана сигналом.
ENOSYS
Функция ttyname() не реализована для файловой системы, определяемой по filedes.
ENOTTY
Аргумент fildes не связан с терминалом.
EPERM
У процесса недостаточно прав для выполнения команды.

Примеры:

/*
* The following program prints out the name
* of the terminal associated with stdin.
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main( void )
{
if ( isatty( 0 ) )
{
printf( "%s\n", ttyname( 0 ) );
} else {
printf( "\n" );
}
return (EXIT_SUCCESS);
}

Классификация:

POSIX 1003.1

Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Нет
В потоке
Нет

Тематические ссылки:

ctermid(), setsid(), ttyname_r()




Предыдущий раздел: Описание API системной библиотеки