C fseek() function
C library function - fseek()
The fseek() function change the current file position that is associated with stream to a new location within the file.
Syntax:
int fseek(FILE *stream, long int offset, int whence)
fseek() Parameters:
Name | Description | Required /Optional |
---|---|---|
stream | Identifies an address for a file descriptor, which is an area of memory associated with an input or output stream. | Required |
offset | Number of bytes to offset from whence | Required |
whence | The new position, measured in bytes from the beginning of the file, shall be obtained by adding offset to the position specified by whence. | Required |
Return value from fseek()
- The fseek() function shall return 0 if they succee,d otherwise, they shall return -1 and set errno to indicate the error.
Example: fseek() function
Following function opens a file test.txt for reading. After performing input operations,fseek() moves the file pointer to the beginning of the file.
#include <stdio.h>
#define MAX_LEN 10
int main(void)
{
FILE *stream;
char buffer[MAX_LEN + 1];
int result;
int i;
char ch;
stream = fopen("test.txt", "r");
for (i = 0; (i < (sizeof(buffer)-1) &&
((ch = fgetc(stream)) != EOF) && (ch != '\n')); i++)
buffer[i] = ch;
result = fseek(stream, 0L, SEEK_SET); /* moves the pointer to the */
/* beginning of the file */
if (result == 0)
printf("Pointer successfully moved to the beginning of the file.\n");
else
printf("Failed moving pointer to the beginning of the file.\n");
}
Output:
Pointer successfully moved to the beginning of the file.
C Programming Code Editor:
Previous C Programming: C fread()
Next C Programming: C fsetpos()
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://w3resource.com/c-programming/stdio/c_library_method_fseek.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics