summaryrefslogtreecommitdiff
path: root/docs/reference/src/util/nng_strfree.md
blob: 3cebb7f6bfe955d7231e1105c42a24118912bb36 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# nng_strfree

## NAME

nng_strfree --- free memory

## SYNOPSIS

```c
#include <nng/nng.h>

void nng_strfree(char *str);
```

## DESCRIPTION

The `nng_strfree()` function deallocates the string _str_.
This is equivalent to using [`nng_free()`][nng_free] with
the length of _str_ plus one (for the `NUL` terminating byte) as
the size.

> [!IMPORTANT]
> This should only be used with strings that were allocated
> by [`nng_strdup()`][nng_strdup] or [`nng_alloc()`](nng_alloc.md).
> In all cases, the allocation size of the string must be the same
> as `strlen(__str__) + 1`.

> [!IMPORTANT]
> Consequently, if the a string created with
> [`nng_strdup()`][nng_strfree] is modified to be shorter, then
> it is incorrect to call this function.
> (The [`nng_free()`](nng_Free.md) function can be used instead in that
> case, using the length of the original string plus one for the size.)

## SEE ALSO

[nng_alloc][nng_alloc],
[nng_free][nng_free],
[nng_strdup][nng_strdup]

{{#include ../refs.md}}