fgetc
, fgetwc
Membaca karakter dari aliran.
Sintaks
int fgetc(
FILE *stream
);
wint_t fgetwc(
FILE *stream
);
Parameter
stream
Penunjuk ke FILE
struktur.
Nilai hasil
fgetc
mengembalikan karakter yang int
dibaca sebagai atau kembali EOF
untuk menunjukkan kesalahan atau akhir file. fgetwc
mengembalikan, sebagai wint_t
, karakter lebar yang sesuai dengan karakter yang dibaca atau dikembalikan WEOF
untuk menunjukkan kesalahan atau akhir file. Untuk kedua fungsi, gunakan feof
atau ferror
untuk membedakan antara kesalahan dan kondisi akhir file. Jika terjadi kesalahan baca, indikator kesalahan untuk aliran diatur. Jika stream
adalah NULL
, fgetc
dan fgetwc
panggil handler parameter yang tidak valid, seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, fungsi-fungsi ini diatur errno
ke EINVAL
dan mengembalikan EOF
.
Keterangan
Masing-masing fungsi ini membaca satu karakter dari posisi file saat ini yang terkait dengan stream
. Fungsi kemudian menaikkan penunjuk file terkait (jika ditentukan) untuk menunjuk ke karakter berikutnya. Jika aliran berada di akhir file, indikator akhir file untuk aliran diatur.
fgetc
setara dengan getc
, tetapi hanya diimplementasikan sebagai fungsi, bukan sebagai fungsi dan makro.
fgetwc
adalah versi fgetc
karakter lebar ; berbunyi c sebagai karakter multibyte atau karakter lebar ketika stream
dibuka dalam mode teks atau mode biner, masing-masing.
Versi dengan akhiran _nolock
identik kecuali tidak dilindungi dari gangguan oleh utas lain.
Untuk informasi selengkapnya tentang memproses karakter lebar dan karakter multibyte dalam mode teks dan biner, lihat I/O aliran Unicode dalam mode teks dan biner.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Pemetaan rutin teks generik
TCHAR. Rutinitas H | _UNICODE dan _MBCS tidak ditentukan |
_MBCS Didefinisikan |
_UNICODE Didefinisikan |
---|---|---|---|
_fgettc |
fgetc |
fgetc |
fgetwc |
Persyaratan
Function | Header yang diperlukan |
---|---|
fgetc |
<stdio.h> |
fgetwc |
<stdio.h> atau <wchar.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
// crt_fgetc.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:
fopen_s( &stream, "crt_fgetc.txt", "r" );
if( stream == NULL )
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( stream );
}
// Add null to end string
buffer[i] = '\0';
printf( "%s\n", buffer );
fclose( stream );
}
Input: crt_fgetc.txt
Line one.
Line two.
Hasil
Line one.
Line two.
Baca juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk