---
name: "addhtitem"
section: "3"
platform: "linux"
package: "alliance"
version: "5.1.1-3"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/addhtitem"
---

# addhtitem(3)

adds a new item in a hash table.

## NAME

addhtitem - adds a new item in a hash table.

## SYNOPSYS

```
#include "mut.h"
void addhtitem(table, key, value)
ht ∗table;
void ∗key;
int value;
```

## PARAMETERS

- *table*

  Hash table pointer

- *key*

  Key used by the hash coding function to add the item

- *value*

  Value associated with the key

## DESCRIPTION

**addhtitem()** adds a new item in the hash table pointed to by *table*. If the key already exists, the old value is changed to the new one. *Value* must be distinct from **EMPTYHT** and **DELETEHT**. The length of the table increases automatically when the length given in **addht()** leads to a performance shut down.

## EXAMPLE

```
#include "mut.h"
#include "mlo.h"
void conHenter(h, ptfig)
ht ∗h;
lofig_list ∗ptfig;
{
locon_list ∗ptcon;
	/∗ since connector names are unique, add them without check ∗/
	for (ptcon = p->LOCON; ptcon; ptcon = ptcon->NEXT)
		addhtitem(h, ptcon->NAME, 0);
}
```

## ERRORS

**"∗∗∗ mbk error ∗∗∗ addhtitem impossible :** **value is EMPTYHT or DELETEHT"**

The values **EMPTYHT**, *-1*,  and **DELETEHT**, *-2*, are reserved for internal use, sorry.

## DIAGNOSTICS

The value must be distinct from *-1* and *-2*.

## SEE ALSO

**mbk**(1), [**addht**(3)](/addht/3.md), [**delht**(3)](/delht/3.md), [**gethtitem**(3)](/gethtitem/3.md), [**sethtitem**(3)](/sethtitem/3.md), [**delhtitem**(3)](/delhtitem/3.md), [**viewht**(3)](/viewht/3.md).
