stdio(){}
stdio(::FILE* fp) : _Base(fp){}
stdio(const char* path, const char* mode="r") : _Base(open_params_type(path, mode)){}
+
+ /////////////////////////////////////////////////////////////////////////////////
+ void seek_ex(long offset, int whence){
+ this->handler_assert("seek");
+
+ if ( ::fseek(this->get_handle(), offset, whence) != 0 )
+ throw io_exception("stdio::seek(): ::fseek() was failed.");
+ }
+ void seek(long offset){ seek_ex(offset, SEEK_CUR); }
+ void seek_abs(long offset){ seek_ex(offset, SEEK_SET); }
+ void seek_end(long offset=0){ seek_ex(offset, SEEK_END); }
};
///////////////////////////////////////////////