---
name: "form_userptr"
section: "3x"
platform: "macos"
package: "ncurses"
version: "79"
release: "macOS 26.5"
platforms: ["linux", "macos"]
url: "https://new.carta.tech/form_userptr/3x"
---

# form\_userptr(3x)

associate application data with a form item

## NAME

**form\_userptr** - associate application data with a form item

## SYNOPSIS

**#include \<form.h\>**\
 int set\_form\_userptr(FORM \*form, void \*userptr);\
 void\* form\_userptr(const FORM \*form);\

## DESCRIPTION

Every form and every form item has a field that can be used to hold application-specific data (that is, the form-driver code leaves it alone). These functions get and set the form user pointer field.

## RETURN VALUE

The function **form\_userptr** returns a pointer (which may be **NULL**). It does not set errno.

The function **set\_form\_userptr** returns **E\_OK** (success).

## SEE ALSO

**curses**(3X), **form**(3X).

## NOTES

The header file **\<form.h\>** automatically includes the header file **\<curses.h\>**.

## PORTABILITY

These routines emulate the System V forms library.  They were not supported on Version 7 or BSD versions.

The user pointer is a void pointer. We chose not to leave it as a char pointer for SVr4 compatibility.

## AUTHORS

Juergen Pfeifer.  Manual pages and adaptation for new curses by Eric S. Raymond.
