LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 660|回复: 1

管道问题

[复制链接]
发表于 2007-6-4 10:39:47 | 显示全部楼层 |阅读模式
有三个问题:
1.管道问题确切的说还是文件描述符,帮忙清楚具体的解释一下什么是文件描述符,在运行一个
int main()
{
        int         fd[2];
        if(pipe(fd)<0)
        {
                printf("error\n");
                exit(EXIT_FAILURE);
        }
        printf("descriptors are %d, %d\n",fd[0],fd[1]);
        close(fd[0]);
        close(fd[1]);
        exit(EXIT_FAILURE);
}
它的输出是3,4,不明白?
2.linux下的两个函数,read 和 fread 有什么区别?
3.system()和pipe()有什么区别联系
谢谢
发表于 2007-6-4 12:11:07 | 显示全部楼层
fd[0], fd[1] 是 FILE 型变量, 是文件描述符. 楼主可以去看看 stdin, stdout, stderr 各自是几

read 与 fread 的关系我们只要关心表面上的就好, read 是与 open 等对应的, 是无缓冲的, fread 是与 fopen 等对应的, 是对 read 之类的封装, 是有缓冲的.

system 与 pipe 的 "联系" 嘛, 它们都是函数, 它们的 "区别" 嘛, 去 man 3 system, man 2 pipe 吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表