Seek within an SDL_RWops data stream.
int whence); Sint64 SDL_RWseek(SDL_RWops *context, Sint64 offset,
context | a pointer to an SDL_RWops structure |
offset | an offset in bytes, relative to whence location; can be negative |
whence | any of SDL_RW_SEEK_SET , SDL_RW_SEEK_CUR , SDL_RW_SEEK_END |
Returns the final offset in the data stream after the seek or a negative error code on failure; call SDL_GetError() for more information.
This function seeks to byte offset
, relative to whence
.
whence
may be any of the following values:
SDL_RW_SEEK_SET
: seek from the beginning of dataSDL_RW_SEEK_CUR
: seek relative to current read pointSDL_RW_SEEK_END
: seek relative to the end of dataIf this stream can not seek, it will return -1.
SDL_RWseek() is actually a wrapper function that calls the SDL_RWops's seek
method appropriately, to simplify application development.
This function is available since SDL 3.0.0.
"myfile.bin", "rb");
SDL_RWops *rw = SDL_RWFromFile(if (rw != NULL) {
/* Seek to 0 bytes from the end of the file */
0, SDL_RW_SEEK_END);
Sint64 length = SDL_RWseek(rw,
SDL_RWclose(rw);if (length < 0) {
"Could not seek inside myfile.bin\n");
printf(else {
} "myfile.bin is %d bytes long\n", length);
printf(
} }