pInput = fopen("input.bin", "w+b");
if (pInput == NULL)
{
return(-1);
MyLogs(szError);
}
printf("Enter 'x': "); scanf("%lf", &x);
fwrite(&a, sizeof(double), 1, pInput);
fwrite(&x, sizeof(double), 1, pInput);
fwrite(&b, sizeof(double), 1, pInput);
fseek(pInput, 0, SEEK_SET);
fread(&a, sizeof(double), 1, pInput);
fread(&x, sizeof(double), 1, pInput);
fread(&b, sizeof(double), 1, pInput);
fclose(pInput);
char buff[100];
snprintf(buff, 99, "Parameter file 'input.bin' opened. X = %.3lf, a = %.0lf, b = %.0lf.", x, a, b);
MyLogs(buff);
dResult = x / a - 1 / (a * 6) * log10(a + b*exp(6 * x));
我必须编写程序(用于我的作业使用freed(),fwrite(),ftell(),fseek()),它写入二进制一些数据,然后读取它来计算表达。我有个问题。 我是否必须编写三个fwrite()和三个freed()?或者我可以在一个函数调用中执行此操作吗?有没有完美的方法呢?