### Function

# GLib utf8_collate_key

since: 2.0

#### Declaration

    gchar*
    g_utf8_collate_key (
      const gchar* str,
      gssize len
    )

#### Description

Converts a string into a collation key that can be compared with other collation keys produced by the same function using strcmp().

The results of comparing the collation keys of two strings with `strcmp()` will always be the same as comparing the two original keys with g_utf8_collate().

Note that this function depends on the [current locale][setlocale].

Available since: 2.0

#### Parameters

`str`

  Type: `const gchar*`

  A UTF-8 encoded string.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

`len`

  Type: `gssize`

  Length of `str`, in bytes, or -1 if `str` is nul-terminated.

#### Return value

Type: `gchar*`

A newly allocated string. This string should be freed with `g_free()` when you are done with it.

The caller of the function takes ownership of the data, and is responsible for freeing it.
The value is a NUL terminated UTF-8 string.