Вы неправильно используете этот тип.Во-первых, это не представляет длину.Он представляет собой позицию .Во-вторых, он предназначен только для вызова на fsetpos
.Вы не должны делать арифметику, потому что это не обязательно представляет числовой тип.Он содержит любую информацию, которая необходима вашей библиотеке для выполнения операции fsetpos
.В реализации вашей библиотеки fpos_t
представляется агрегатным типом, таким как struct.(Вы можете проверить определение в заголовочных файлах, чтобы быть уверенным, но не полагайтесь на то, что вы там найдете; оно может отличаться на других платформах или в будущих версиях вашей стандартной библиотеки.)
Что касаетсяваш следующий шаг, подумайте над тем, чтобы задать более прямой вопрос о том, как решить любую проблему, над которой вы работали, когда у вас возникла идея выполнять побитовые операции над fpos_t
.