---
name: "catgets"
section: "3"
platform: "macos"
package: "Libc"
version: "1752.120.2"
release: "macOS 26.5"
platforms: ["linux", "freebsd", "macos"]
url: "https://new.carta.tech/catgets"
---

# catgets(3)

retrieve string from message catalog

## NAME

**catgets** – retrieve string from message catalog

## LIBRARY

Standard C Library (libc, -lc)

## SYNOPSIS

**#include \<nl\_types.h\>**

*char* *\**\

**catgets**(*nl\_catd catd*, *int set\_id*, *int msg\_id*, *const char \*s*);

## DESCRIPTION

The **catgets**() function attempts to retrieve message *msg\_id* of set *set\_id* from the message catalog referenced by the descriptor *catd*. The argument *s* points to a default message which is returned if the function is unable to retrieve the specified message.

## RETURN VALUES

If the specified message was retrieved successfully, **catgets**() returns a pointer to an internal buffer containing the message string; otherwise it returns *s*.

## ERRORS

- \[EBADF\]

  The *catd* argument is not a valid message catalog descriptor.

- \[EBADMSG\]

  The message identified by *set\_id* and *msg\_id* is not in the message catalog.

## SEE ALSO

[gencat(1)](/gencat/1.md), [catclose(3)](/catclose/3.md), [catopen(3)](/catopen/3.md)

## STANDARDS

The **catgets**() function conforms to IEEE Std 1003.1-2001 (“POSIX.1”).
