Scroll to navigation

SDL_strcasecmp(3) SDL3 FUNCTIONS SDL_strcasecmp(3)

NAME

SDL_strcasecmp - Compare two null-terminated UTF-8 strings, case-insensitively.

HEADER FILE

Defined in SDL3/SDL_stdinc.h

SYNOPSIS

#include "SDL3/SDL.h"
int SDL_strcasecmp(const char *str1, const char *str2);

DESCRIPTION

This will work with Unicode strings, using a technique called "case-folding" to handle the vast majority of case-sensitive human languages regardless of system locale. It can deal with expanding values: a German Eszett character can compare against two ASCII 's' chars and be considered a match, for example. A notable exception: it does not handle the Turkish 'i' character; human language is complicated!

Since this handles Unicode, it expects the string to be well-formed UTF-8 and not a null-terminated string of arbitrary bytes. Bytes that are not valid UTF-8 are treated as Unicode character U+FFFD (REPLACEMENT CHARACTER), which is to say two strings of random bits may turn out to match if they convert to the same amount of replacement characters.

FUNCTION PARAMETERS

The first string to compare. NULL is not permitted!
The second string to compare. NULL is not permitted!

RETURN VALUE

Returns less than zero if str1 is "less than" str2, greater than zero if str1 is "greater than" str2, and zero if the strings match exactly.

THREAD SAFETY

It is safe to call this function from any thread.

AVAILABILITY

This function is available since SDL 3.0.0.

SDL 3.1.2 Simple Directmedia Layer