1.
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int main(int argc, const char *argv[])
{
int rfp=open("4_1.txt",O_RDONLY);
int wfp=open("4_2.txt",O_WRONLY | O_TRUNC | O_CREAT,0777);
int buf[32]={0};
int res1=read(rfp,buf,12);
if(res1==-1)
{
printf("没有读到数据");
return 1;
}
int res2=write(wfp,buf,12);
if(res2==-1)
{
printf("写入失败\n");
return 2;
}
close(rfp);
close(wfp);
return 0;
}
2.
#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int main(int argc, const char *argv[])
{
for(int i=1;i<=100;i++)
{
int res = fork();
if(res==-1)
{
perror("fork");
return 1;
}
else if(res>0)
{
break;
}
}
printf("子进程pid=%d,父进程pid=%d\n",getpid(),getppid());
sleep(1);
return 0;
}