---
name: "SDL_EnterAppMainCallbacks"
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_EnterAppMainCallbacks"
---

# SDL\_EnterAppMainCallbacks(3)

An entry point for SDL's use in SDL\_MAIN\_USE\_CALLBACKS .

## NAME

SDL\_EnterAppMainCallbacks - An entry point for SDL's use in  **SDL\_MAIN\_USE\_CALLBACKS** .

## HEADER FILE

Defined in SDL3/SDL\_main.h

## SYNOPSIS

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

**int SDL\_EnterAppMainCallbacks(int argc, char \*argv\[\], SDL\_AppInit\_func appinit, SDL\_AppIterate\_func appiter, SDL\_AppEvent\_func appevent, SDL\_AppQuit\_func appquit);**

## DESCRIPTION

Generally, you should not call this function directly. This only exists to hand off work into SDL as soon as possible, where it has a lot more control and functionality available, and make the inline code in

**SDL\_main** .h as small as possible.

Not all platforms use this, it's actual use is hidden in a magic header-only library, and you should not call this directly unless you \_really\_ know what you're doing.

## FUNCTION PARAMETERS

- *argc*

  standard Unix main argc.

- *argv*

  standard Unix main argv.

- *appinit*

  the application's  **SDL\_AppInit**\
    function.

- *appiter*

  the application's  **SDL\_AppIterate**\
    function.

- *appevent*

  the application's  **SDL\_AppEvent**\
    function.

- *appquit*

  the application's  **SDL\_AppQuit**\
    function.

## RETURN VALUE

Returns standard Unix main return value.

## THREAD SAFETY

It is not safe to call this anywhere except as the only function call in

**SDL\_main** .

## AVAILABILITY

This function is available since SDL 3.2.0.
