---
name: "bson_uint32_to_string"
section: "3"
platform: "linux"
package: "libbson-doc"
version: "1.30.4-1+deb13u3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/bson_uint32_to_string"
---

# bson\_uint32\_to\_string(3)

## SYNOPSIS

```
size_t
bson_uint32_to_string (uint32_t value,
                       const char **strptr,
                       char *str,
                       size_t size);
```

## PARAMETERS

- •

  **value**: A uint32\_t.

- •

  **strptr**: A location for the resulting string pointer.

- •

  **str**: A location to buffer the string.

- •

  **size**: A size\_t containing the size of **str**.

## DESCRIPTION

Converts **value** to a string.

If **value** is from 0 to 999, it will use a constant string in the data section of the library.

If not, a string will be formatted using **str** and **snprintf()**.

**strptr** will always be set. It will either point to **str** or a constant string. Use this as your key.

## ARRAY ELEMENT KEY BUILDING

Each element in a BSON array has a monotonic string key like **"0"**, **"1"**, etc. This function is optimized for generating such string keys.

```
char str[16];
const char *key;
uint32_t i;
for (i = 0; i < 10; i++) {
   bson_uint32_to_string (i, &key, str, sizeof str);
   printf ("Key: %s\n", key);
}
```

## RETURNS

The number of bytes in the resulting string.

## AUTHOR

MongoDB, Inc

## COPYRIGHT

2009-present, MongoDB, Inc.
