---
name: "SDL_strdup"
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_strdup"
---

# SDL\_strdup(3)

Allocate a copy of a string.

## NAME

SDL\_strdup - Allocate a copy of a string.

## HEADER FILE

Defined in SDL3/SDL\_stdinc.h

## SYNOPSIS

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

**char \* SDL\_strdup(const char \*str);**

## DESCRIPTION

This allocates enough space for a null-terminated copy of **str** , using

**SDL\_malloc** , and then makes a copy of the string into this space.

The returned string is owned by the caller, and should be passed to

**SDL\_free**\
  when no longer needed.

## FUNCTION PARAMETERS

- *str*

  the string to copy.

## RETURN VALUE

Returns a pointer to the newly-allocated string.

## THREAD SAFETY

It is safe to call this function from any thread.

## AVAILABILITY

This function is available since SDL 3.2.0.
