我要写一个小游戏的程序,要求能保存10个高分记录,可每次第一个记录的第一个字符串总是null,大家帮忙看下吧~拜谢了~
void SaveResult(INFO yourinfo)/*typedef struct{STRING name;unsigned int wins,loses;double percent;STRING time;}INFO;STRING其实就是自定义的char*/
{
INFO info[11];FILE *fp;FILE *fpp;
int count=0,i=1,t;
CopyInfo(info,0,yourinfo);
fp=fopen("result.bak","r");
if(!fp)
{CopyInfo(info,1,yourinfo);count=1;}
else
{
while(i=ith)
{
if(kinfo.percent)
return i;
}
return 0;
}
void CopyInfo(INFO info[],int x,INFO y)
{
info[x].name=DuplicateString(y.name);/*DuplicateString是字符串复制的函数,没问题的*/
info[x].time=DuplicateString(y.time);
info[x].wins=y.wins;
info[x].loses=y.loses;
info[x].percent=y.percent;
}
结果result.bak里就是
(null):2008-05-30 10:40:11;1 0 1.000000
hhh:2008-05-30 10:41:50;1 1 0.500000
ddd:2008-05-30 10:39:51;0 1 0.000000
aaa:2008-05-30 10:40:40;0 1 0.000000
ccc:2008-05-30 10:44:22;0 1 0.000000
不知道是为什么呀?
小妹这学期刚刚开始学习C,没学过C++,大家也可以忽视我的写法,帮我写一段估摸着我能看明白的程序吧~~~谢谢啦
|