rewind
Repositions the file pointer to the beginning of a file.
Syntax
void rewind(
FILE *stream
);
Parameters
stream
Pointer to FILE
structure.
Remarks
The rewind
function repositions the file pointer associated with stream
to the beginning of the file. A call to rewind
is similar to
(void) fseek(stream, 0L, SEEK_SET );
However, unlike fseek
, rewind
clears both the error indicators for the stream and the end-of-file indicator. Also, unlike fseek
, rewind
doesn't return a value to indicate whether the pointer was successfully moved.
To clear the keyboard buffer, use rewind
with the stream stdin
, which is associated with the keyboard by default.
If stream is a NULL
pointer, the invalid parameter handler is invoked, as described in Parameter validation. If execution is allowed to continue, this function returns, and errno
is set to EINVAL
.
For information on these and other error codes, see errno
, _doserrno
, _sys_errlist
, and _sys_nerr
.
By default, this function's global state is scoped to the application. To change this behavior, see Global state in the CRT.
Requirements
Routine | Required header |
---|---|
rewind |
<stdio.h> |
For more compatibility information, see Compatibility.
Libraries
All versions of the C run-time libraries.
Example
// crt_rewind.c
/* This program first opens a file named
* crt_rewind.out for input and output and writes two
* integers to the file. Next, it uses rewind to
* reposition the file pointer to the beginning of
* the file and reads the data back in.
*/
#include <stdio.h>
int main( void )
{
FILE *stream;
int data1, data2;
data1 = 1;
data2 = -37;
fopen_s( &stream, "crt_rewind.out", "w+" );
if( stream != NULL )
{
fprintf( stream, "%d %d", data1, data2 );
printf( "The values written are: %d and %d\n", data1, data2 );
rewind( stream );
fscanf_s( stream, "%d %d", &data1, &data2 );
printf( "The values read are: %d and %d\n", data1, data2 );
fclose( stream );
}
}
Output
The values written are: 1 and -37
The values read are: 1 and -37
See also
Phản hồi
https://aka.ms/ContentUserFeedback.
Sắp ra mắt: Trong năm 2024, chúng tôi sẽ dần gỡ bỏ Sự cố với GitHub dưới dạng cơ chế phản hồi cho nội dung và thay thế bằng hệ thống phản hồi mới. Để biết thêm thông tin, hãy xem:Gửi và xem ý kiến phản hồi dành cho