目次 - API(機能別) - ファイル入出力 - SDL_RWwrite

SDL_RWwrite

データストリームに書き込む

構文

size_t SDL_RWwrite(struct SDL_RWops* context, const void* ptr, size_t size, size_t num)

引数

contextSDL_RWopsへのポインタ
ptrバッファに書き込むデータへのポインタ
sizeオブジェクトのバイト数
num書き込むオブジェクトの数

戻り値

書き込んだオブジェクトの数を戻す. numよりも少ない場合はエラーである. SDL_GetError()で詳細を知ることができる.

サンプルコード

SDL_RWops *rw = SDL_RWFromFile("hello.txt", "w");
if(rw != NULL) {
    const char *str = "Hello World";
    size_t len = SDL_strlen(str);
    if (SDL_RWwrite(rw, str, 1, len) != len) {
        printf("文字列を全て書き込めなかった\n");
    } else {
        printf("%d 1-byte ブロック書き込んだ\n", len);
    }
    SDL_RWclose(rw);
}

詳細

それぞれsizeバイトのちょうどnum個のオブジェクトをptrの領域からストリームに書き込む. 何らかの理由で失敗すると, numより少ない実際に書き込めた数が戻る. 成功するとnumを戻す.

SDL_RWcloseは実際にはSDL_RWopsのwriteメソッドを呼ぶマクロである.

関連項目(関数)

SDL_RWclose
SDL_RWFromConstMem
SDL_RWFromFile
SDL_RWFromFP
SDL_RWFromMem
SDL_RWread
SDL_RWseek

SDL Wikiへのリンク

SDL_RWwrite - SDL Wiki