📄 examine_user_name.cpp
字号:
#include"acridine.h"
#include"string.h"
#include"malloc.h"
#include"iostream.h"
void save(user *yonghu);//把从实参传过来的结点信息写进文件
void free_user_link(member &head);//清空会员链表
int jiance(user *yonghu0,int &flag)//检测新注册的用户名是否已经被用过,当flag为1时,表示用户名合法,为0时,非法
{
user *p,*p1,*head;
FILE *fp;
p1=(user*)malloc(sizeof(user));
p1->next=NULL;
head=p1;
if((fp=fopen("acridine_massage.txt","r+"))==NULL)
{
printf(" cannot open file\n");
return 0;
}
while(!feof(fp))
{
fscanf(fp,"%ld %s %s %s %s %s %d",&(p1->UserID),p1->true_name,p1->user_name,p1->sex,p1->phone,p1->code,&(p1->borrow_num));
if(strlen(p1->user_name)>29)//如果乱码,则继续执行while,直到文件结束(只有在文件为空(似空实非空)的时候才会乱码)
{
continue;
}
if(strcmp(yonghu0->user_name,p1->user_name)==0)//判断用户名是否重复
{
flag=0;
return 0;
}
if(strcmp(yonghu0->true_name,p1->true_name)==0)
{
flag=-1;
return 0;
}
yonghu0->UserID=p1->UserID+1;//不重复的话,标号增加一,
p=(user*)malloc(sizeof(user));
p->next=NULL;
p1->next=p;
p1=p;
}
printf(" 注册成功!\n");
save(yonghu0);//把增加的用户写进文件
fclose(fp);
free_user_link(head);
return 1;
}
/*int jiance(user yonghu0,int &flag)//检测新注册的用户名是否已经被用过,当flag为1时,表示用户名合法,为0时,非法
{
user p,p1;
FILE *fp;
p1=(struct lnode*)malloc(sizeof(lnode));
p1->next=NULL;
if((fp=fopen("yonghu.txt","r+"))==NULL)
{
printf("cannot open file\n");
return 0;
}
while(!feof(fp))
{
fscanf(fp,"%s %s %s %d\n",p1->name,p1->sex,p1->phone,&p1->number);
if(strlen(p1->name)>19)//如果乱码,则继续执行while,直到文件结束(只有在文件为空(似空实非空)的时候才会乱码)
continue;
if(strcmp(yonghu0->name,p1->name)==0)//判断用户名是否重复
{
flag=0;
return 0;
}
yonghu0->number=p1->number+1;//不重复的话,标号增加一,
p=(struct lnode*)malloc(sizeof(lnode));
p->next=NULL;
p1->next=p;
p1=p;
}
printf("注册成功,该学生信息已经被保存进文件\n");
save(yonghu0);//把增加的用户写进文件
fclose(fp);
return 1;
}*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -