1、用fwrite和fread拷贝文件
#include<myhead.h>
int main(int argc, const char *argv[])
{
FILE *fp=NULL;
FILE *fp2=NULL;
//以只写的方式打开文件
if((fp=fopen(argv[1],"w"))==NULL)
{
perror("fopen error");
return -1;
}
//从终端输入文件内容
char str[128]="";
printf("请输入>>>");
fgets(str,sizeof(str),stdin);
fwrite(str,1,strlen(str),fp);
fclose(fp);
char str1[128]="";
if((fp=fopen(argv[1],"r"))==NULL)
{
perror("fopen error");
return -1;
}
if((fp2=fopen(argv[2],"w"))==NULL)
{
perror("fopen error");
return -1;
}
//将文件内容拷贝到另一个文件
int res=fread(str1,1,sizeof(str1),fp);
fwrite(str1,1,res,fp2);
return 0;
}
2、用write和read拷贝文件
#include<myhead.h>
int main(int argc, const char *argv[])
{
//定义一个文件描述符变量
int fd=-1;
//打开终端输入的文件
if((fd=open(argv[1],O_RDWR|O_CREAT|O_TRUNC,0775))==-1)
{
perror("open error");
return -1;
}
//在终端输入文件内容
char wbuf[128]="";
printf("please enter:");
fgets(wbuf,sizeof(wbuf),stdin);
//把文件内容输入到文件中
write(fd,wbuf,sizeof(wbuf));
close(fd);
if((fd=open(argv[1],O_RDONLY))== -1)
{
perror("open error");
return -1;
}
int fd2=-1;
if((fd2=open(argv[2],O_WRONLY|O_CREAT|O_TRUNC,0664)) == -1)
{
perror("open error");
return -1;
}
char rbuf[128]="";
int res=read(fd,rbuf,sizeof(rbuf));
write(fd2,rbuf,res);
close(fd);
close(fd2);
return 0;
}
3、用时间处理函数让时间在终端跑起来
#include<myhead.h>
int main(int argc, const char *argv[])
{
while(1)
{
//获取时间的秒数
time_t sysTime=time(NULL);
//通过秒数获取时间结构体指针
struct tm *t=localtime(&sysTime);
//将时间打印在终端上
printf("%4d-%2d-%2d %2d:%2d:%2d\n",t->tm_year+1900,\
t->tm_mon+1,t->tm_mday,t->tm_hour,t->tm_min,t->tm_sec);
fflush(stdout);
sleep(1);
}
return 0;
}