我对管道全新,我无法理解某些东西。我知道创建一个管道,它只是
"d:\\Users\\bci\\Desktop\\Animation\\bin\\Release\\"
但是,如果我想创建一堆管道怎么办?我会使用相同的int数组还是不同的数组?例如,如果我想创建3个管道,那么它是
int fd[2];
pipe(fd);
或者
int fd[2];
pipe(fd);
pipe(fd);
pipe(fd);
答案 0 :(得分:2)
您肯定需要使用不同的数组。在调用pipe(x)
之后,管道的读取和写入端的文件描述符将被放入x
的元素中。如果再次调用pipe(x)
,您将丢失先前创建的管道的文件描述符,并且以后将无法关闭它。
答案 1 :(得分:0)
如果你想创建多个管道并且不想为它们使用多个名称,你可以像这样使用 2维数组:
int fd[3][2];
for(i=0;i<3;i++)
{
pipe(fd[i]);
}
这样可以节省声明多个数组的时间和复杂性