今天看到了命名管道这,于是就写了个小程序实践一下
程序有两个,一个Sever,一个Client,主要功能是在客户端输入字符,
然后通过管道让服务端读取!

/*fifosever.c*/
#include
#include
#include
#include

#include

#define FIFO_FILE  "MYFIFO"

int main (void)
{
 FILE *fp;
 char readbuf[80];

 umask(0);
 mknod(FIFO_FILE,S_IFIFO|0666,0);/*creat a fifo*/

 while(1)
 {
  fp=fopen(FIFO_FILE,"r");
  fgets(readbuf,80,fp);
  printf("The message is:%s\n",readbuf);
  fclose(fp);
 }/*get information from FIFO*/
 return 0;
}



/*fifoclient.c*/
#include
#include

#define FIFO_FILE "MYFIFO"

int main (int argc,char *argv[])
{
 FILE *fp;

 if(argc!=2)
 {
  printf("USAGE:fifoclient[string]\n");
  exit(1);
 }

 if((fp=fopen(FIFO_FILE,"w"))==NULL)
 {
  perror("fopen");
  exit(1);
 }
 fputs(argv[1],fp);
 fclose(fp);
  return 0;
}