#pragma section-numbers off #pragma disable-camelcase = SDL_RWFromFP = Use this function to create an [[SDL_RWops]] structure from a standard I/O file pointer (stdio.h's `FILE*`). <> == Syntax == {{{#!highlight cpp SDL_RWops* SDL_RWFromFP(void* fp, SDL_bool autoclose) }}} == Function Parameters == ||'''fp'''||the `FILE*` that feeds the [[SDL_RWops]] stream|| ||'''autoclose'''||SDL_TRUE to close the `FILE*` when closing the [[SDL_RWops]], SDL_FALSE to leave the `FILE*` open when the RWops is closed|| == Return Value == Returns a pointer to the [[SDL_RWops]] structure that is created, or NULL on failure; call [[SDL_GetError]]() for more information. == Code Examples == {{{#!highlight cpp FILE *fp = fopen("myfile.dat", "rb"); SDL_RWops *rw = SDL_RWFromFP(fp, SDL_TRUE); /* Do things with rw... */ SDL_RWclose(rw); /* Automatically does an fclose(fp) in this case */ }}} == Remarks == This function is not available on Windows, since files opened in an application on that platform cannot be used by a dynamically linked library. On some platforms, the first parameter is a `void*`, on others, it's a `FILE*`, depending on what system headers are available to SDL. It is always intended to be the `FILE*` type from the C runtime's stdio.h. == Related Functions == .[[SDL_RWclose]] .[[SDL_RWFromConstMem]] .[[SDL_RWFromFile]] .[[SDL_RWFromMem]] .[[SDL_RWread]] .[[SDL_RWseek]] .[[SDL_RWtell]] .[[SDL_RWwrite]] ---- [[CategoryAPI]], [[CategoryIO]]