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

# delnum(3)

delete an element of a num\_list

## NAME

delnum - delete an element of a **num\_list**

## SYNOPSYS

```
#include "mut.h"
num_list ∗delnum(pthead, ptdel)
num_list ∗pthead, ∗ptdel;
```

## PARAMETERS

- *pthead*

  Pointer to a **num** list

- *ptdel*

  Pointer to the element to be deleted.

## DESCRIPTION

**delnum** deletes the element of the **num\_list** pointed to by *ptdel* in the list pointed to by *pthead*. The list consistency is maintainded, and the element put back in the list of free blocks.

## RETURN VALUE

**delnum** returns a pointer to the new head of list if the *ptdel* pointer used to belong to the list. In most case, it has the value of *pthead*. If the pointer doesn't belong to the list, **NULL** is returned.

## ERROR

**"∗∗∗ mbk error ∗∗∗ delnum impossible : pointer NULL"**

At least one of the arguments are pointing to **NULL**, and that clear that such a pointer can't be deleted.

## EXAMPLE

```
#include "mut.h"
void delete_match(c0, c1)
num_list ∗c1, ∗c2;
{
num_list ∗t0, ∗t1, ∗next;
	for (t0 = c0; t0; t0 = next)
		for (t1 = c1; t1; t1 = t1->NEXT)
			if (t1->DATA == t0->DATA)
				next = delnum(c0, t0);
}
```

## SEE ALSO

**mbk**(1), [**num**(3)](/num/3.md), [**addnum**(3)](/addnum/3.md), [**freenum**(3)](/freenum/3.md).
