[POSIX]文件系统(概述)

1.文件名由除系统目录分隔符(unix是/,windows是\)和空字符“\0”外的任意ASCII字符组成,现代系统很多还可以包含UNICODE字符,但是还是推荐使用传统的ASCII码命名.

2.目录不能创建硬链接.

3.文件描述符是一个非负数.

3.不同进程打开同一个文件,会有不同的文件描述符(fd)返回.

4.一般shell程序会把0、1、2三个文件描述符标准化为shell程序的输入输出和错误输出,换句话说文件描述符0到2已经被这3个标准输入输出占用了.

POSIX也定义了三个常量代表了这三个数字包含在unistd.h头文件上

STDIN_FILENO 0
STDOUT_FILENO 1
STDERR_FILENO 2

代码示例:

#include <fcntl.h>
#include <unistd.h>

int main(void){
    char s_1[] = "my error.\n";
    write(STDERR_FILENO, s_1, 10);
    return 0;
}

此代码片段会在控制台,输出"my error.\n".

猜你喜欢

转载自www.cnblogs.com/yiyide266/p/9651784.html