usrdb.c
来自「Linux环境登陆源码」· C语言 代码 · 共 37 行
C
37 行
#include <stdio.h>
#include <string.h>
#include "usrdb.h"
#define initb(buf) bzero(buf, sizeof(buf))
FILE *ropendb(const char *dbname)
{
FILE *fp;
if((fp=fopen(dbname, "r")) == NULL)
return NULL;
return fp;
}
int getusrbyid(FILE *fp, const char *id, struct user *ubuf)
{
char idbuf[255], pwdbuf[255];
for(initb(idbuf), initb(pwdbuf); !feof(fp); initb(idbuf), initb(pwdbuf))
{
fscanf(fp, "%s\t%s", idbuf, pwdbuf);
if(strcmp(idbuf, id) != 0)
continue;
else
{
strcpy(ubuf->id, idbuf);
strcpy(ubuf->pwd, pwdbuf);
return 0;
}
}
return -1;
}
int closedb(FILE *fp)
{
return fclose(fp);
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?