위의 프로그램은 Linux에서 입력했습니다. 기본적으로 클라이언트와 서버를 별도의 터미널에 연결해야합니다. 내가, 올바른 순서로 즉
- 컴파일 서버를 실행할 때 -> 실행 서버
- 컴파일 클라이언트 -> 실행 클라이언트
단자는 아무것도 모릅니다. 첫 번째 printf
문에 "Trying to connect"
부분을 인쇄하지 않습니다. 여기에 실수가 무엇입니까? @parapura 라지 쿠마르 말했듯이
편집
나는 mkfifo
의 반환 값을 검사. 그러나 여전히 동일하게 남아 있습니다. 다음은 서버에 대한 변경된 코드입니다.
if(mkfifo("fifo1",0666)<0) {
printf("Error");
}
if(mkfifo("fifo2",0666)<0) {
printf("Error");
}
fflush(stdout);
, ')를 사용하면 출력이 플러시되어 콘솔에 표시됩니다. 그러면'fflush'가 필요 없습니다. –