读书人

关于加密文件的读出有关问题

发布时间: 2012-04-12 15:46:35 作者: rapoo

求助关于加密文件的读出问题?
我写了个99乘法表,加密写入文件后,再读出时9X9=81变成了88X9=72,求助原因?
void main()
{
FILE *fp;
char k,g,h;
fp=fopen( "first.txt ", "wt ");
for(int i=1;i <=9;i++)
{
for(int j=1;j <=i;j++)
{
fprintf(fp, "%cX%c=%c\t ",j,i,i*j);
cout < <j < < "X " < <i < < "= " < <i*j < < "\t ";
}
fprintf(fp, "\n ");
cout < <endl;
}
fclose(fp);
fp=fopen( "first.txt ", "rt ");
for(int i=1;i <=9;i++)
{
for(int j=1;j <=i;j++)
{
fscanf(fp, "%cX%c=%c\t ",&k,&g,&h);
cout < <(int)k < < "X " < <(int)g < < "= " < <(int)h < < "\t ";
}
cout < <endl;
}
fclose(fp);

}

[解决办法]
在你的fprintf和fscanf的format参数前面各加一个 ": ",可能是bug
fprintf(fp, ":%cX%c=%c\t ",j,i,i*j);
fscanf(fp, ":%cX%c=%c\t ",&k,&g,&h);

读书人网 >C++

热点推荐