_fgetc_nolock
, _fgetwc_nolock
Bir akışı kilitlemeden bir karakteri okur.
Sözdizimi
int _fgetc_nolock(
FILE *stream
);
wint_t _fgetwc_nolock(
FILE *stream
);
Parametreler
stream
Yapı işaretçisi FILE
.
Dönüş değeri
Bkz.fgetwc
fgetc
.
Açıklamalar
_fgetc_nolock
ve _fgetwc_nolock
, diğer iş parçacıkları tarafından müdahaleye fgetc
karşı korunmamaları dışında sırasıyla ve fgetwc
ile aynıdır. Diğer iş parçacıklarını kilitleme yüküne neden olmadıklarından daha hızlı olabilirler. Bu işlevleri yalnızca tek iş parçacıklı uygulamalar gibi iş parçacığı güvenli bağlamlarda veya çağıran kapsamın iş parçacığı yalıtımını zaten işlediği durumlarda kullanın.
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.
Genel metin yordamı eşlemeleri
Tchar.h yordamı | _UNICODE ve _MBCS tanımlanmadı |
_MBCS tanımlanan |
_UNICODE tanımlanan |
---|---|---|---|
_fgettc_nolock |
_fgetc_nolock |
_fgetc_nolock |
_fgetwc_nolock |
Gereksinimler
İşlev | Gerekli başlık |
---|---|
_fgetc_nolock |
<stdio.h> |
_fgetwc_nolock |
<stdio.h> veya <wchar.h> |
Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.
Örnek
// crt_fgetc_nolock.c
// This program uses getc to read the first
// 80 input characters (or until the end of input)
// and place them into a string named buffer.
#include <stdio.h>
#include <stdlib.h>
int main( void )
{
FILE *stream;
char buffer[81];
int i, ch;
// Open file to read line from:
if( fopen_s( &stream, "crt_fgetc_nolock.txt", "r" ) != 0 )
exit( 0 );
// Read in first 80 characters and place them in "buffer":
ch = fgetc( stream );
for( i=0; (i < 80 ) && ( feof( stream ) == 0 ); i++ )
{
buffer[i] = (char)ch;
ch = _fgetc_nolock( stream );
}
// Add null to end string
buffer[i] = '\0';
printf( "%s\n", buffer );
fclose( stream );
}
Giriş: crt_fgetc_nolock.txt
Line one.
Line two.
Çıktı
Line one.
Line two.