当某个程序打开文件时,操作系统返回相应的文件描述符,程序为了处理该文件必须引用此描述符。通常,一个进程启动时,都会打开三个文件-标准输入、标准输出和标准出错处理。这三个文件对应的文件描述符分别为0、1、2。可以用不同的文件描述符改写默认的设置并重定向进程的I/O到不同的文件。
文件描述符是一个非负的整数,它是一个索引值,并指向内核中每个进程打开文件的记录表。当打开一个现存文件或创建一个新文件时,内核就向进程返回一个文件描述符。当需要读写文件时,也需要把该文件描述符作为参数传递给相应的函数。
若要访问文件,而且调用的函数是write、read、open、close。就必须用到文件描述符。
若调用的函数是fwrite、fread、fopen、fclose时就可以绕开文件描述符,与其对应的则是文件流。
时间: 2024-11-03 22:05:38