最近在看《linux网络编程》,看到文件描述符,linux规定了3个文件描述符:
0-标准输入;
1-标准输出;
2-标准错误;
编辑一个文件,命名为test1.c,
int fd;
fd = open("text.c");
printf("%d\n",fd);
进行编译,
$gcc test1.c -o test
$./test
得到fd=-1;因为text并不存在;于是输入以下命令;
$echo " ">text
再次编译;
得到fd=3;
因为文件描述符0、1、2已经使用,于是赋值3.