sdlWcslen function

int sdlWcslen(
  1. Pointer<Int16> wstr
)

This works exactly like wcslen() but doesn't require access to a C runtime.

Counts the number of wchar_t values in wstr, excluding the null terminator.

Like SDL_strlen only counts bytes and not codepoints in a UTF-8 string, this counts wchar_t values in a string, even if the string's encoding is of variable width, like UTF-16.

Also be aware that wchar_t is different sizes on different platforms (4 bytes on Linux, 2 on Windows, etc).

\param wstr The null-terminated wide string to read. Must not be NULL. \returns the length (in wchar_t values, excluding the null terminator) of wstr.

\threadsafety It is safe to call this function from any thread.

\since This function is available since SDL 3.1.3.

\sa SDL_wcsnlen \sa SDL_utf8strlen \sa SDL_utf8strnlen

extern SDL_DECLSPEC size_t SDLCALL SDL_wcslen(const wchar_t *wstr)

Implementation

int sdlWcslen(Pointer<Int16> wstr) {
  final sdlWcslenLookupFunction = libSdl3.lookupFunction<
      Uint32 Function(Pointer<Int16> wstr),
      int Function(Pointer<Int16> wstr)>('SDL_wcslen');
  return sdlWcslenLookupFunction(wstr);
}