Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mendapatkan deskriptor file yang terkait dengan aliran.
Sintaks
int _fileno(
FILE *stream
);
Parameter
stream
Penunjuk ke FILE struktur.
Nilai hasil
_fileno mengembalikan pendeskripsi file. Tidak ada pengembalian kesalahan. Hasilnya tidak ditentukan jika stream tidak menentukan file terbuka. Jika stream adalah NULL, _fileno memanggil handler parameter yang tidak valid, seperti yang dijelaskan dalam Validasi parameter. Jika eksekusi diizinkan untuk melanjutkan, fungsi ini mengembalikan -1 dan diatur errno ke EINVAL.
Untuk informasi selengkapnya tentang kode kesalahan ini dan lainnya, lihat errno, , _doserrno_sys_errlist, dan _sys_nerr.
Catatan
Jika stdout atau stderr tidak terkait dengan aliran output (misalnya, dalam aplikasi Windows tanpa jendela konsol), deskriptor file yang dikembalikan adalah -2. Di versi sebelumnya, deskriptor file yang dikembalikan adalah -1. Perubahan ini memungkinkan aplikasi untuk membedakan kondisi ini dari kesalahan.
Keterangan
Rutinitas _fileno mengembalikan deskriptor file yang saat ini terkait dengan stream. Rutinitas ini diimplementasikan baik sebagai fungsi maupun sebagai makro. Untuk informasi tentang memilih salah satu implementasi, lihat Rekomendasi untuk memilih antara fungsi dan makro.
Secara default, status global fungsi ini dicakup ke aplikasi. Untuk mengubah perilaku ini, lihat Status global di CRT.
Persyaratan
| Fungsi | Header yang diperlukan |
|---|---|
_fileno |
<stdio.h> |
Untuk informasi kompatibilitas selengkapnya, lihat Kompatibilitas.
Contoh
// crt_fileno.c
// This program uses _fileno to obtain
// the file descriptor for some standard C streams.
//
#include <stdio.h>
int main( void )
{
printf( "The file descriptor for stdin is %d\n", _fileno( stdin ) );
printf( "The file descriptor for stdout is %d\n", _fileno( stdout ) );
printf( "The file descriptor for stderr is %d\n", _fileno( stderr ) );
}
The file descriptor for stdin is 0
The file descriptor for stdout is 1
The file descriptor for stderr is 2
Lihat juga
Streaming I/O
_fdopen, _wfdopen
_filelength, _filelengthi64
fopen, _wfopen
freopen, _wfreopen