实现登录功能
#include <stdio.h>
#include <string.h>
int main(int argc, const char *argv[])
{
printf("请输入账户>>>");
char name1[32] = "";
scanf("%s",name1);
printf("请输入密码>>>");
char password1[32] = "";
scanf("%s",password1);
FILE* fp1 = fopen("./name_in_02_for","w+");
if(NULL == fopen)
{
perror("fopen");
return -1;
}
fprintf(fp1,"zhangsan lisi wangwu\n");
fclose(fp1);
FILE *fp2 = fopen("./possword_in_02_for","w+");
if(NULL == fopen)
{
perror("fopen");
return -1;
}
fprintf(fp2,"123456 abc123 abcdef\n");
fclose(fp2);
fp1 = fopen("./name_in_02_for","a+");
fp2 = fopen("./possword_in_02_for","a+");
int res1,res2;
char name2[32] = "";
char password2[32] = "";
while(1)
{
res1 = fscanf(fp1,"%s",name2);
res2 = fscanf(fp2,"%s",password2);
if(strcmp(name1,name2) == 0)
{
if(strcmp(password1,password2) == 0)
{
printf("登录成功\n");
break;
}
else
{
printf("密码错误\n");
break;
}
}
else
{
printf("账户错误\n");
}
}
return 0;
}
计算文件大小封装成函数
int My_ftell(FILE *fq,char arr[])
{
int a = 0;
int res;
char c;
fq = fopen(arr,"r");
while(1)
{
res = fscanf(fq,"%c",&c);
if(res == EOF)
{
return a;
}
a++;
}
}
用fgets和fputs实现文件拷贝
#include <stdio.h>
int main(int argc, const char *argv[])
{
FILE *fq = fopen("./01_fopen.c","r");
FILE *fq1 = fopen("./06_fgets_fputs.c","w+");
if(NULL == fq)
{
perror("fopen");
return -1;
}
int res;
char str[128] = "";
while(fgets(str,sizeof(str),fq) != NULL)
{
fputs(str,fq1);
}
fclose(fq);
return 0;
}