Wiki Page Content


Use this function to prepare a read-write memory buffer for use with SDL_RWops.


SDL_RWops* SDL_RWFromMem(void* mem,
                         int   size)

Function Parameters


a pointer to a buffer to feed an SDL_RWops stream


the buffer size, in bytes

Return Value

Returns a pointer to a new SDL_RWops structure, or NULL if it fails; call SDL_GetError() for more information.

Code Examples

char bitmap[310000];
SDL_RWops *rw = SDL_RWFromMem(bitmap, sizeof(bitmap));
SDL_SaveBMP_RW(screen, rw, 1);  /* closes SDL_RWops, leaves us memory buffer of data */


This function sets up an SDL_RWops struct based on a memory area of a certain size, for both read and write access.

This memory buffer is not copied by the RWops; the pointer you provide must remain valid until you close the stream. Closing the stream will not free the original buffer.

If you need to make sure the RWops never writes to the memory buffer, you should use SDL_RWFromConstMem() with a read-only buffer of memory instead.

CategoryAPI, CategoryIO

None: SDL_RWFromMem (last edited 2015-06-20 20:00:06 by PhilippWiesemann)

Please include your contact information if you'd like to receive a reply.