搜索
查看: 979|回复: 7
打印 上一主题 下一主题

一个关于文件指针的问题

[复制链接]
跳转到指定楼层
楼主
发表于 2013-8-28 12:07:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
#include <stdio.h>
#include <string.h>
#include <malloc.h>
#include <windows.h>
#include <math.h>
#include <stdlib.h>
#define MIN 750000
#define MAX 1500000
#define start 3
#define delta 100000//间隔
#define end 10000
int main()
{
int min,b,max,L,temp,i;
double temp2;
FILE *fp[15];
char *a[10];

if((fp[0]=fopen("f0","ab")==NULL)) printf("error");
if((fp[1]=fopen("f1","ab")==NULL)) printf("error");
if((fp[2]=fopen("f2","ab")==NULL)) printf("error");
if((fp[3]=fopen("f3","ab")==NULL)) printf("error");
if((fp[4]=fopen("f4","ab")==NULL)) printf("error");
if((fp[5]=fopen("f5","ab")==NULL)) printf("error");
if((fp[6]=fopen("f6","ab")==NULL)) printf("error");
if((fp[7]=fopen("f7","ab")==NULL)) printf("error");
if((fp[8]=fopen("f8","ab")==NULL)) printf("error");
if((fp[9]=fopen("f9","ab")==NULL)) printf("error");
if((fp[10]=fopen("f10","ab")==NULL)) printf("error");
if((fp[11]=fopen("f11","ab")==NULL)) printf("error");
if((fp[12]=fopen("f12","ab")==NULL)) printf("error");
if((fp[13]=fopen("f13","ab")==NULL)) printf("error");
if((fp[14]=fopen("f14","ab")==NULL)) printf("error");
//printf("%d",rear->n);
for(min=start;min<end;min++)
{

for(b=min;b<MIN;b++)
{
if(b%2==1&&min%2==1)
continue;

temp2=sqrt(pow(min,2)+pow(b,2));
temp=floor(temp2);
L=min+b+temp;
if(temp2==temp&&L<MAX)
{
max=temp;

printf("%d,%d,%d,%d\n",min,b,max,L);
i=L/delta;
fwrite(&L,sizeof(int),1,fp[i]);//亮点在这里!!!

}
}
}

for(i=0;i<15;i++)
{
fclose(fp[i]);
}

system("pause");
}


我想把L作为整形输入到文件中,但是定义出来的文件指针数组元素的地址全是一样的,用vc编译没有bug,卡在fwrite函数那里了,究竟哪里出错了?

最佳答案

查看完整内容

if((fp[0]=fopen("f0","ab")==NULL)) printf("error"); 这15句 你要的是 if((fp[0]=fopen("f0","ab")) == NULL) printf("error");
沙发
发表于 2013-8-28 12:07:45 | 只看该作者
if((fp[0]=fopen("f0","ab")==NULL)) printf("error");
这15句

你要的是 if((fp[0]=fopen("f0","ab")) == NULL) printf("error");
板凳
 楼主| 发表于 2013-8-28 14:56:31 | 只看该作者
rosynirvana 发表于 2013-8-28 13:48
if((fp[0]=fopen("f0","ab")==NULL)) printf("error");
这15句

改过后依然是老样子
地板
发表于 2013-8-28 14:58:47 | 只看该作者
{:soso__4369960187147127123_1:}
5#
发表于 2013-8-28 15:24:28 | 只看该作者
redfive 发表于 2013-8-28 14:56
改过后依然是老样子

整段代码再贴上来
6#
 楼主| 发表于 2013-8-28 18:44:48 | 只看该作者
rosynirvana 发表于 2013-8-28 15:24
整段代码再贴上来

可以了,原来是我自己弄错了,再问一下,以整形记录在二进制流文件中的数字,怎么查看呢?可以用txt打开吗?
7#
发表于 2013-8-28 18:56:00 | 只看该作者
redfive 发表于 2013-8-28 18:44
可以了,原来是我自己弄错了,再问一下,以整形记录在二进制流文件中的数字,怎么查看呢?可以用txt打开吗 ...

你要查看为什么还要存成二进制?
8#
 楼主| 发表于 2013-8-28 19:06:48 | 只看该作者
rosynirvana 发表于 2013-8-28 18:56
你要查看为什么还要存成二进制?

也是哦……
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表