---
name: "SDL_CreateEnvironment"
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_CreateEnvironment"
---

# SDL\_CreateEnvironment(3)

Create a set of environment variables

## NAME

SDL\_CreateEnvironment - Create a set of environment variables

## HEADER FILE

Defined in SDL3/SDL\_stdinc.h

## SYNOPSIS

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

**SDL\_Environment \* SDL\_CreateEnvironment(bool populated);**

## FUNCTION PARAMETERS

- *populated*

  true to initialize it from the C runtime environment, false to create an empty environment.

## RETURN VALUE

( **SDL\_Environment**\
  \*) Returns a pointer to the new environment or NULL on failure; call  **SDL\_GetError** () for more information.

## THREAD SAFETY

If **populated** is false, it is safe to call this function from any thread, otherwise it is safe if no other threads are calling setenv() or unsetenv()

## AVAILABILITY

This function is available since SDL 3.2.0.

## SEE ALSO

**•**(3), [**SDL\_GetEnvironmentVariable**(3)](/SDL_GetEnvironmentVariable/3.md), **•**(3), [**SDL\_GetEnvironmentVariables**(3)](/SDL_GetEnvironmentVariables/3.md), **•**(3), [**SDL\_SetEnvironmentVariable**(3)](/SDL_SetEnvironmentVariable/3.md), **•**(3), [**SDL\_UnsetEnvironmentVariable**(3)](/SDL_UnsetEnvironmentVariable/3.md), **•**(3), [**SDL\_DestroyEnvironment**(3)](/SDL_DestroyEnvironment/3.md)
