ctermid - get controlling terminal name
char *ctermid(char *s);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
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.
The pointer to the pathname.
For an explanation of the terms used in this section, see attributes(7).
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.