我正在尝试在文件中写入数组的全部内容。这是我的代码:
fichier = fopen(patch, "w+");
if (fichier != NULL)
{
if(methode==1)
{
trieur(tableau, ttableau);
int d;
d=0;
for (d = 0 ; d < ttableau ; d++)
{
fputs(tableau[d], fichier);
}
}
else if(methode==2)
{
trieur2(tableau, ttableau);
int d;
d=0;
for (d = 0 ; d < ttableau ; d++)
{
fputs(tableau[d], fichier);
}
}
else
{
printf("Methode non disponible!\nBye Bye!");
exit(0);
}
do
{
caractere = fgetc(fichier);
printf("%c", caractere);
} while (caractere != EOF);
fclose(fichier);
}
else
{
printf("Hum something wrong witch file %s", name);
}
但它不起作用。任何人都可以帮助我吗?
谢谢!
ps:更多脚本,一切正常,但我的脚本在写入文件时关闭:/
main =&gt; pastebin.com/m2AM0080 func.h =&gt; pastebin.com/KQkAbwin
答案 0 :(得分:0)
点击完整代码的链接后,您有int tableau[]
。所以ypu将int
传递给fputs()
,但fputs()
需要char *
。那不行。要将int二进制写入输出文件,可以使用
fwrite( tableau+d, sizeof(int), 1, fichier );
要编写多个ASCII数字,您可以使用
fprintf( fichier, "%d", tableau[d] );
顺便说一下。如果你直接包含你在帖子中使用的变量的声明,那就更容易了。