Namespaces
Variants
Actions

std::rewind

From cppreference.com
< cpp‎ | io‎ | c
 
 
 
C-style I/O
Types and objects
Functions
File access
Direct input/output
Unformatted input/output
Formatted input
(C++11)(C++11)(C++11)    
(C++11)(C++11)(C++11)    
 
Defined in header <cstdio>
void rewind( std::FILE * stream );

Moves the file position indicator to the beginning of the given file stream.

The function is equivalent to std::fseek (stream, 0, SEEK_SET );, except that end-of-file and error indicators are cleared.

The function drops any effects from previous calls to ungetc .

[edit] Parameters

stream - file stream to modify

[edit] Return value

(none)

[edit] Example

Run this code
#include <array>
#include <cstdio>
 
int main()
{
 std::FILE * f = std::fopen ("file.txt", "w");
 for (char ch = '0'; ch <= '9'; ch++)
 std::fputc (ch, f);
 std::fclose (f);
 
 std::array <char, 20> str;
 std::FILE * f2 = std::fopen ("file.txt", "r");
 
 const unsigned size1 = std::fread (str.data(), 1, str.size(), f2);
 std::puts (str.data());
 std::printf ("size1 = %u\n", size1);
 
 std::rewind(f2);
 
 const unsigned size2 = std::fread (str.data(), 1, str.size(), f2);
 std::puts (str.data());
 std::printf ("size2 = %u", size2);
 
 std::fclose (f2);
}

Output:

0123456789
size1 = 10
0123456789
size2 = 10

[edit] See also

moves the file position indicator to a specific location in a file
(function) [edit]
C documentation for rewind
Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/io/c/rewind&oldid=145312"

AltStyle によって変換されたページ (->オリジナル) /