当前正在处理我们正在使用C中的管道的分配。我需要能够读写和写入管道。这是我困惑的地方。我知道有两种不同类型的管道(或制造它们的不同方法)。我知道有一个管道功能可以读写到匿名管道。在我们的作业书写中,我了解到您使用MKFIFO在目录中创建一个命名的管道。但是,它还指出您可以像普通文件一样使用该管道,但是当我尝试使用它时,它只是悬挂。这是我的代码:
#include <stdio.h>
int main(int argc, char * argv[]){
FILE *fp;
fp = fopen("pipe", "r");
char c = 'o';
fputc(c, fp);
fclose(fp);
}
那么,管道实际上不是以这种方式使用的吗?任何帮助是极大的赞赏!谢谢
可写的文件打开呼叫( fopen( "pipe", "w" )
, open( "pipe", O_WRONLY )
等)到FIFO/命名的管道将悬挂直到打开管道以读取。