---
name: "SDL_swprintf"
section: "3"
platform: "linux"
package: "libsdl3-doc"
version: "3.2.10+ds-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SDL_swprintf"
---

# SDL\_swprintf(3)

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

## NAME

SDL\_swprintf - This works exactly like swprintf() but doesn't require access to a C runtime.

## HEADER FILE

Defined in SDL3/SDL\_stdinc.h

## SYNOPSIS

```
#include "SDL3/SDL.h"
```

**int SDL\_swprintf(wchar\_t \*text, size\_t maxlen, const wchar\_t \*fmt, ...);**

## DESCRIPTION

Format a wide string of up to **maxlen** -1 wchar\_t values, converting each

While some C runtimes differ on how to deal with too-large strings, this function null-terminates the output, by treating the null-terminator as part of the **maxlen** count. Note that if **maxlen** is zero, however, no wide characters will be written at all.

This function returns the number of \_wide characters\_ (not \_codepoints\_) that should be written, excluding the null-terminator character. If this returns a number \>= **maxlen** , it means the output string was truncated. A negative return value means an error occurred.

Referencing the output string's pointer with a format item is undefined behavior.

## FUNCTION PARAMETERS

- *text*

  the buffer to write the wide string into. Must not be NULL.

- *maxlen*

  the maximum wchar\_t values to write, including the null-terminator.

- *fmt*

  a printf-style format string. Must not be NULL.

- *...*

  a list of values to be used with the format string.

## RETURN VALUE

Returns the number of wide characters that should be written, not counting the null-terminator char, or a negative value on error.

## THREAD SAFETY

It is safe to call this function from any thread.

## AVAILABILITY

This function is available since SDL 3.2.0.
