C语言fread&&fwrite问题 达人进
发布网友
发布时间:2024-09-29 02:48
我来回答
共5个回答
热心网友
时间:2024-11-10 12:57
言不在多!
fread&&fwrite,都是以二进制方式,操作(读或写)文件的
你的文件,貌似是文本类型,用gets或fscanf等,对齐进行操作,更简单点
if(strcmp(login.Account,Test.Account))是两者不等的意思,相等应该这样写:if(strcmp(login.Account,Test.Account)==0)
如果输入的正确,那估计是你读入的不对
热心网友
时间:2024-11-10 12:51
呵呵,这句是错误的if(user[0]==login[0]&&user[1]==login[1])
你是想比较两个字符串是否相等,这只是比较两个地址,当然永远不等了
应该用STRCMP(USER[0],LOGIN[0])这样的方式
热心网友
时间:2024-11-10 12:56
这个适合fscanf和fprintf
比如,
fscanf(user_set,"%13s %13s",&user[0][0],&user[0][1]);
热心网友
时间:2024-11-10 12:50
使用strcmp比较两个字串时,如果它们相等,返回值为0。否则返回非0值。
if(!strcmp(login.Account,Test.Account)&& !strcmp(login.Password,Test.Password))
热心网友
时间:2024-11-10 12:52
你直接读每一列就行了呀!第一列用户名 第二列密码
---------------------------------------------------
ifstream f1;
char kbuffer[6][20],jbuffer[6][20];
f1.open("f.txt",ios::in|ios::nocreate);
int i=0,count=1;
while(f1>>jbuffer[i])//读第一列到jbuffer[i],即用户名
{
if(!(count%2))
i++;
count++;
}
i=0;count=1;
while(f1>>kbuffer[i])//读第二列到kbuffer[i],即密码
{
if((count%2))
i++;
count++;
}
------------------------------------------------
希望对你有帮助!