ctermid — get controlling terminal name


#include <stdio.h>

char *ctermid(char *s);

Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

ctermid(): _POSIX_C_SOURCE


ctermid() returns a string which is the pathname for the current controlling terminal for this process. If s is NULL, a static buffer is used, otherwise s points to a buffer used to hold the terminal pathname. The symbolic constant L_ctermid is the maximum number of characters in the returned pathname.

Return Value

The pointer to the pathname.


For an explanation of the terms used in this section, see attributes(7).

Interface Attribute Value
ctermid() Thread safety MT-Safe

Conforming to

POSIX.1-2001, POSIX.1-2008, Svr4.


The returned pathname may not uniquely identify the controlling terminal; it may, for example, be /dev/tty.

It is not assured that the program can open the terminal.

See Also



This page is part of release 5.04 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.

Referenced By

procenv(1), ttyname(3).

2019-03-06 GNU Linux Programmer's Manual