函式
<cstdio>

fsetpos

int fsetpos ( FILE * stream, const fpos_t * pos );
設定流的位置指示器
中的當前位置恢復到pos

關聯的內部檔案位置指示器被設定為由pos表示的位置,pos是一個指向fpos_t物件的指標,該物件的值必須是先前透過呼叫fgetpos獲得的。

成功呼叫此函式後,檔案結束內部指示器將被清除,並且先前對此呼叫ungetc的所有效果都將被丟棄。

在以更新模式(讀+寫)開啟的流上,呼叫fsetpos允許在讀取和寫入之間切換。

一個類似的函式fseek可用於在以二進位制模式開啟的流上設定任意位置。

引數

stream
指向一個 FILE 物件的指標,該物件標識了流。
position
指向fpos_t物件的指標,該物件包含先前用fgetpos獲得的位置。

返回值

如果成功,該函式返回零。
失敗時,返回一個非零值,並將errno設定為一個系統特定的正值。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* fsetpos example */
#include <stdio.h>

int main ()
{
  FILE * pFile;
  fpos_t position;

  pFile = fopen ("myfile.txt","w");
  fgetpos (pFile, &position);
  fputs ("That is a sample",pFile);
  fsetpos (pFile, &position);
  fputs ("This",pFile);
  fclose (pFile);
  return 0;
}

此程式碼成功執行後,一個名為myfile.txt的檔案將包含
This is a sample


另見