day2

使用fgets实现计算一个文件有几行
#include
int main(int argc, const char *argv[])
{
    FILE *fp=fopen("1.txt","r");
    if(NULL==fp)
    {
        ERR_MSG("fopen");
    }
    int co=0;
    while(1)
    {
        char a[20];
        char *b=fgets(a,sizeof(a),fp);
        if(NULL==b)
            break;
        for(int i=0;*(a+i)!='\0';i++)
        {
            if(*(a+i)=='\n')
            {
                co++;
                break;
            }
        }
    }
    printf("共有%d行\n",co);    
    if(fclose(fp)<0)
    {
        ERR_MSG("fclose");
    }
    return 0;
}

day2_第1张图片

 用fread和fwrite实现文件拷贝
#include
int main(int argc, const char *argv[])
{
    FILE *fp1=fopen("1.txt","r");
    if(NULL==fp1)
    {
        ERR_MSG("fopen");
    }
    FILE *fp2=fopen("2.txt","w");
    if(NULL==fp2)
    {
        ERR_MSG("fopen");
    }
    char read_[1]="";
    size_t num;
    while(1)
    {
        num=fread(read_,sizeof(read_),1,fp1);
        if(num==0)
            break;
        fwrite(read_,sizeof(read_),1,fp2);
    }
    if(fclose(fp1)<0)
    {
        ERR_MSG("fclose");
    }
    if(fclose(fp2)<0)
    {
        ERR_MSG("fclose");
    }
    return 0;
}

day2_第2张图片

 

 

你可能感兴趣的:(c语言)