### Function

# GLib utf8_collate

since: 2.0

#### Declaration

    gint
    g_utf8_collate (
      const gchar* str1,
      const gchar* str2
    )

#### Description

Compares two strings for ordering using the linguistically correct rules for the [current locale][setlocale]. When sorting a large number of strings, it will be significantly faster to obtain collation keys with `g_utf8_collate_key()` and compare the keys with `strcmp()` when sorting instead of sorting the original strings.

If the two strings are not comparable due to being in different collation sequences, the result is undefined. This can happen if the strings are in different language scripts, for example.

Available since: 2.0

#### Parameters

`str1`

  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.

`str2`

  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.

#### Return value

Type: `gint`

< 0 if `str1` compares before `str2`, 0 if they compare equal, > 0 if `str1` compares after `str2`.