我有这段代码可以从文件中读取整数。我使用相同的代码从另一个文件中读取双精度并完美运行,但这次循环变得无限。可能是什么?我正在阅读的文件是由程序编写的,可以吗?我不知道这是什么意思,但我的操作系统说该文件是二进制文件。好吧,任何帮助将不胜感激。谢谢。
i=1;
cadeia = malloc ( i * sizeof(int) );
if (!cadeia){ //Avalia se a alocação de memória foi bem sucedida
printf("Problema na alocação de memória para cadeia.");
exit(0);
}
while ( !feof( arq_cadeia ) ){ /*Fazendo leitura e alocação de memória da matriz de transição*/
fscanf ( arq_cadeia , "%d" , ( cadeia+i-1 ) );
i++;
cadeia = realloc ( cadeia , i * sizeof( int ) );
if (!cadeia){ //Avalia se a alocação de memória foi bem sucedida
printf("Problema na alocação de memória para cadeia.");
exit(0);
}
printf("%d\n", *( cadeia+i-1 ));
}