CTERMID(3) Library Functions Manual CTERMID(3)

ctermid, ctermid_rgenerate terminal pathname

Standard C Library (libc, -lc)

#include <stdio.h>

char *
ctermid(char *buf);

char *
ctermid_r(char *buf);

The () function generates a string, that, when used as a pathname, refers to the current controlling terminal of the calling process.

If buf is the NULL pointer, a pointer to a static area is returned. Otherwise, the pathname is copied into the memory referenced by buf. The argument buf is assumed to be at least L_ctermid (as defined in the include file <stdio.h>) bytes long.

The () function provides the same functionality as ctermid() except that if buf is a NULL pointer, NULL is returned.

The current implementation simply returns ‘/dev/tty’.

The ctermid() function returns buf if it is non-NULL, otherwise it returns the address of a static buffer. The ctermid_r() function always returns buf, even if it is the NULL pointer.

The current implementation detects no error conditions.

ttyname(3)

The ctermid() function conforms to IEEE Std 1003.1-1988 (“POSIX.1”).

By default the ctermid() function writes all information to an internal static object. Subsequent calls to ctermid() will modify the same object.

October 1, 2011 macOS 15.2