1、使用fgets统计一个文件的行号
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main(int argc, const char *argv[])
{
FILE *fp;
if((fp = fopen("./test1.c","r")) == NULL)
{
perror("open file");
return -1;
}
char buf[1024];
int count=0;
while(fgets(buf,sizeof(buf),fp) != NULL)
{
if(buf[strlen(buf)-1] == '\n')
{
count++;
}
}
printf("行号为:%d\n",count);
return 0;
}
2、使用fgets、fputs拷贝文件
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main(int argc, const char *argv[])
{
FILE *srcfp,*destfp;
if((srcfp = fopen("./file2.txt","r")) == NULL)
{
perror("open file");
return -1;
}
if((destfp = fopen("./file1.txt","w")) == NULL)
{
perror("open file");
return -1;
}
char buf[1024];
while(fgets(buf,sizeof(buf),srcfp) != NULL)
{
fputs(buf,destfp);
}
fclose(srcfp);
fclose(destfp);
return 0;
}
3、思维导图