---
name: "ggidev-assign_int_3"
section: "3"
platform: "linux"
package: "libggi2-dev"
version: "1:2.2.2-5"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/ggidev-assign_3"
---

# ggidev-assign\_int\_3(3)

Initialize a triple-int

Part of [ggidev-assign\_3(3)](/ggidev-assign_3/3.md).

## NAME

**ggidev-assign\_3**, **ggidev-assign\_int\_3**, **ggidev-assign\_unsigned\_3** - Initialize a triple-int

## SYNOPSIS

```
#include <ggi/internal/triple-int.h>
unsigned *assign_3(unsigned l[3], unsigned r[3]);
unsigned *assign_int_3(unsigned l[3], int r);
unsigned *assign_unsigned_3(unsigned l[3], unsigned r);
```

## DESCRIPTION

**assign\_3** assigns the value of one existing **triple-int** **r** to another **triple-int** **l**.

**assign\_int\_3** and **assign\_unsigned\_3** assigns the argument **r** to the least significant position of the **triple-int** **l**. **assign\_int\_3** extends the sign, while **assign\_unsigned\_3** does not.

## RETURN VALUE

**assign\_3**, **assign\_int\_3** and **assign\_unsigned\_3** all return a pointer to the freshly assigned **triple-int** **x**.

## EXAMPLES

Assign some values to **triple-ints**:

```
unsigned x[3], y[3], z[3];
assign_int_3(x, -42);
assign_unsigned_3(y, 17);
assign_3(z, x);
```

## SEE ALSO

`ggidev-triple-int(7)`
