我试图做的进程间通信stdin
和stdout
。 POSIX的功能,我发现是popen
,但我没写工作示例代码。 请帮我把这项工作。
<EDIT1>
我一定要使用dup
? 我可以看到与谷歌利用它发现了一些例子。 但Linux的手动dup
真的没有帮助我了解如何使用它。
</ EDIT1>
AC
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void){
char *s;
for(;;){
scanf("%ms",&s);
printf("%s\n",s);
if(!strcmp(s,"quit")){
free(s);
printf("bye~\n");
exit(EXIT_SUCCESS);
}
free(s);
}
}
公元前
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void){
FILE *fRead;
FILE *fWrite;
char *s;
int i;
fRead=popen("~/a.out","r");
fWrite=popen("~/a.out","w");
for(i=1;i<=10;++i){
fprintf(fWrite,"%d",i);
fscanf(fRead,"%ms",&s);
printf("%s\n",s);
free(s);
}
}