目次 - 3.関数 - 3.5パケット - SDLNet_ResizePacket

SDLNet_ResizePacket

int SDLNet_ResizePacket(UDPpacket *packet, int size)

packet
サイズを変えるUDPpacketへのポインタ
size
UDPpacketに確保されたデータバッファの新しいデータ長. 0は不正

UDPpacketのデータバッファをsizeバイトに変える. 古いデータバッファは保持されないため, この呼び出しの後は使えなくなる.

戻り値: 新しいパケットのデータバッファのサイズ. 要求したサイズ未満なら失敗

サンプルコード

// UDPpacketのデータサイズを2048byteに変更する
//UDPpacket *packet;
int newsize;

newsize=SDLNet_ResizePacket(packet, 2048);
if(newsize<2048) {
    printf("SDLNet_ResizePacket: %s\n", SDLNet_GetError());
    // 指定したサイズのバッファが得られなかった場合の処理を行う必要があるかもしれない
}
else {
    // ここでサイズ変更後の処理を行う
}

参照

SDLNet_AllocPacket, SDLNet_AllocPacketV, SDLNet_FreePacket, UDPpacket

原文へのリンク

3.5.2 SDLNet_ResizePacket