buffer_tell

此函数获取当前 " 查找 " 位置以供其他缓冲区函数使用。

当您使用 buffer_readbuffer_write 函数向缓冲区读取或写入数据时,当前 " 查找 " 位置会提前写入或读取的字节。例如,如果您的缓冲区对齐设置为 4 字节,并且您写入了 1 字节大小的单条数据,然后执行 buffer_tell,您将得到返回值 1。但是,如果您写入另一条数据,大小也是 1 个字节,然后执行 buffer_tell,您将得到返回值 5,因为对齐已将数据 " 填充 " 到该位置。

要更改缓冲区的查找值,请使用 buffer_seek

 

语法:

buffer_tell(buffer);

参数类型描述
bufferBufferThe buffer to use.

 

返回:

Real

 

例子:

var _pos = buffer_tell(buff); buffer_seek(buff, buffer_seek_start, 0);
val[0] = buffer_read(buff, buffer_S16);
val[1] = buffer_read(buff, buffer_S16);
val[2] = buffer_read(buff, buffer_S16);
buffer_seek(buff, buffer_seek_start, _pos);

上述代码会将变量 buff 中存储的缓冲区内的当前查找位置存储到局部变量 _pos。然后,缓冲区查找位置将设置为缓冲区的开头,并将三块数据读入数组,最后将缓冲区查找位置重置为之前的位置。