我有一个函数dumpArray();它可以:
void dumpArray(void)
{
while(p <= i)
{
printf("%i:", packet[p].source);
printf("%i:", packet[p].dest);
printf("%i:", packet[p].type);
printf("%i\n", packet[p].port);
p++;
}
}
我正试着把它传给fprintf();因此:
void fWrite(void)
{
char fileName[30] = { '\0' };
printf("Please specify a filename: ");
scanf("%s", fileName) ;
FILE *txtFile;
txtFile = fopen(fileName, "w");
if (txtFile == NULL)
{
printf("Can't open file!");
exit(1);
}
else fprintf(txtFile, dumpArray());
}
我正试图将dumpArray()的结果写入文件。
有没有人能看出我错在哪里并指出我的方向。
最佳答案
根据传入的流,可以重写dumparray以写入stdout或文本文件。
因此,您可以将所有printf调用更改为fprintf,并将流作为第一个参数传递。
关于c - 如何将函数传递到fprintf,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10440523/