0
저는 Linux에서 파이핑 I/O 기능을 처음 사용했습니다.2 개의 c- 파일을 사용하는 Linux 명령 줄 리디렉션
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <unistd.h>
int main(int argc, char* argv[])
{
int i = 0;
for(;;)
{
printf("\nSent number: %d",i);
i++;
sleep(1);
fflush(stdout);
}
return 0;
}
번째 파일 인쇄 번호를 수신하고 표시 :
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <unistd.h>
int main(int argc, char* argv[])
{
int x;
for(;;)
{
scanf("%d",&x);
printf("Received number: %d\n",x);
sleep(1);
fflush(stdout);
}
return 0;
}
마지막 I가 제 파일에서 데이터를 재 지정하려고를 2 C-파일 만들어진 첫 번째는 데이터 전송 두 번째는 다음과 같습니다.
./send_test.out | ./rcv_test.out
터미널에서 "수신 번호 : 0"을 잘못 입력 했습니까? 또한 송신기에서 수신기로 출력을 보내는 동안 동시에 실행되는 두 프로그램의 터미널 창을 가질 수 있습니까? 사전
그 트릭을 했어, 고마워! 두 개의 다른 터미널 창에서 동시에 두 프로그램을 모두 실행할 수 있습니까? – user3488736
두 프로그램이 데이터를 보내도록 FIFO를 만들 수 있습니다. "mkfifo pipe"를 입력하고 "./program1> pipe"를 실행하고 다른 창에서 "./program2
대단히 감사합니다! – user3488736