rewind
Dosya işaretçisini dosyanın başına yeniden konumlandırır.
Sözdizimi
void rewind(
FILE *stream
);
Parametreler
stream
Yapı işaretçisi FILE
.
Açıklamalar
işlevi, rewind
dosyanın başlangıcıyla stream
ilişkili dosya işaretçisini yeniden konumlandırır. çağrısı şuna rewind
benzer:
(void) fseek(stream, 0L, SEEK_SET );
Ancak, aksine fseek
, rewind
akışın hata göstergelerini ve dosya sonu göstergesini temizler. Ayrıca, değerinden farklı olarakfseek
rewind
, işaretçinin başarıyla taşınıp taşınmadığını belirten bir değer döndürmez.
Klavye arabelleği temizlemek için, varsayılan olarak klavyeyle ilişkili akışıyla stdin
kullanınrewind
.
Akış bir NULL
işaretçiyse, parametre doğrulamasında açıklandığı gibi geçersiz parametre işleyicisi çağrılır. Yürütmenin devam etmesi için izin verilirse, bu işlev döner ve errno
olarak EINVAL
ayarlanır.
Bunlar ve diğer hata kodları hakkında bilgi için bkz. errno
, _doserrno
, _sys_errlist
ve _sys_nerr
.
Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.
Gereksinimler
Yordam | Gerekli başlık |
---|---|
rewind |
<stdio.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Kitaplıklar
C çalışma zamanı kitaplıklarının tüm sürümleri.
Örnek
// 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 );
}
}
Çıktı
The values written are: 1 and -37
The values read are: 1 and -37
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin