getc, getwc
Bir karakteri bir akışından okuma.
int getc(
FILE *stream
);
wint_t getwc(
FILE *stream
);
Parametreler
- stream
Giriş akışı.
Dönüş Değeri
Okuma karakteri verir.Okuma hatası veya dosya sonu koşul belirtmek için getc döndüren EOF, ve getwc döndüren WEOF.İçin getc, kullanma ferror veya feof bir hata ya da dosya sonu denetlemek için.stream Olan NULL, getc ve getwc açıklandığı gibi geçersiz bir parametre işleyicisi çağırmak Parametre Doğrulama.Bu işlevler dönüş yürütülmesine devam etmek için izin verilip verilmediğini, EOF (veya WEOF içingetwc) ve errno için EINVAL.
Bkz: _doserrno, errno, _sys_errlist ve _sys_nerr bu ve diğer hata kodları hakkında daha fazla bilgi için.
Notlar
Her yordam tek bir karakterin geçerli konumu ve artışlarla bir dosyadan ilişkili dosya işaretçisi (tanımlanmışsa) sonraki karakterin üzerine için okur.Dosya ile ilişkili stream.
Bu işlevler iş parçasıyla kilitlemek ve dolayısıyla bu thread-safe.Kilitleme olmayan bir sürümü için bkz: _getc_nolock, _getwc_nolock.
Yordamı özgü açıklamalar izleyin.
Yordamı |
Notlar |
---|---|
getc |
Aynı fgetc, ancak uygulanan bir makro olarak bir işlev olarak. |
getwc |
Geniş karakter sürümü getc.Çok baytlı bir karakter veya bir geniş karaktere göre mi okur stream metin modunda veya ikili modunda açılır. |
Genel metin yordamı eşlemeleri
TCHAR.H yordamına girildi |
_UNICODE & _mbcs tanımlı değil |
Tanımlanan _mbcs |
Tanımlanan _UNICODE |
---|---|---|---|
_gettc |
getc |
getc |
getwc |
Gereksinimler
Yordamı |
Gerekli başlık |
---|---|
getc |
<stdio.h> |
getwc |
<stdio.h> veya <wchar.h> |
Ek uyumluluk bilgileri için bkz: Uyumluluk giriş.
Örnek
// crt_getc.c
// Use getc to read a line from a file.
#include <stdio.h>
int main()
{
char buffer[81];
int i, ch;
FILE* fp;
// Read a single line from the file "crt_getc.txt".
fopen_s(&fp, "crt_getc.txt", "r");
if (!fp)
{
printf("Failed to open file crt_getc.txt.\n");
exit(1);
}
for (i = 0; (i < 80) && ((ch = getc(fp)) != EOF)
&& (ch != '\n'); i++)
{
buffer[i] = (char) ch;
}
// Terminate string with a null character
buffer[i] = '\0';
printf( "Input was: %s\n", buffer);
fclose(fp);
}
Giriş: crt_getc.txt
Line one.
Line two.
Çıktı
Input was: Line one.