fputc
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{
FILE *fp1 = fopen (argv[1],"r");
FILE *fp2 = fopen (argv[2],"w");
if (NULL == fp1 || NULL == fp2)
{
perror("fopen");
exit(-1);
}
int ch ;
while(ch != EOF)
{
ch = fgetc(fp1);
fputc(ch,fp2);
}
printf("文件复制结束\n");
fclose(fp1);
fclose(fp2);
return 0;
}
execl
#include <stdio.h>
#include <unistd.h>
int main(int argc, char const *argv[])
{
printf("复制开始------\n");
//execl("fputc","./fputc","1.ppt","2.ppt",NULL);
execlp("/mnt/hgfs/adcs/系统编程/fputc","./fputc","1.ppt","2.ppt",NULL);
printf("复制结束------\n");
return 0;
}
僵尸进程
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main(int argc, char const *argv[])
{
int i;
for (i = 0; i < 10; ++i)
{
pid_t pid = fork();
if(0 == pid)
break;
//exit(0);
}
while(1);
//printf("子进程创建成功\n");
return 0;
}