---
name: "fstrcoll"
section: "3"
platform: "linux"
package: "libfstrcmp-dev"
version: "0.7.D001-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/fstrcoll"
---

# fstrcoll(3)

fuzzy comparison of two strings using the current locale

## NAME

fstrcoll - fuzzy comparison of two strings using the current locale

## SYNOPSIS

\#include \<fstrcmp.h\>

\#define FSTRCMP\_IDENTICAL\
 \#define FSTRCMP\_THRESHOLD\
 \#define FSTRCMP\_ERROR

double fstrcoll(const char \*string1, const char \*string2);

## DESCRIPTION

The **strcoll**() function compares the two strings *sting1* and *string2*. The comparison is based on strings interpreted as appropriate for the program's current locale for category LC\_CTYPE.

## RETURN VALUE

The **fstrcoll** function returns a floating point value between 0.0 and FSTRCMP\_IDENTICAL.  A value of 0.0 means the strings are utterly un-alike.  A value of FSTRCMP\_IDENTICAL means the strings are identical.  A value of more than FSTRCMP\_THRESHOLD (it lies between 0.0 and FSTRCMP\_IDENTICAL) would be considered "similar" by most people.

A value of FSTRCMP\_ERROR (always negative) indicates a [*malloc*(3)](/malloc/3.md) or [*mbstowcs*(3)](/mbstowcs/3.md) failure.

## SEE ALSO

- [*fstrcmp*(3)](/fstrcmp/3.md)

  fuzzy comparison of two strings

- [*fstrcolli*(3)](/fstrcolli/3.md)

  fuzzy comparison of two strings using the current locale

- [*strcoll*(3)](/strcoll/3.md)

  compare two strings using the current locale

- [*mbstowcs*(3)](/mbstowcs/3.md)

  convert a multibyte string to a wide-character string

## COPYRIGHT

fstrcmp version 0.7\
 Copyright (C) 2009 Peter Miller\
 Peter Miller \<pmiller@opensource.org.au\>

The comparison code is derived from the fuzzy comparison functions in GNU Gettext 0.17.  The GNU Gettext comparison functions were, in turn, derived from GNU Diff 2.7.

Copyright (C) 1988-2009 Free Software Foundation
