Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/05/2010, 23:13
AdamSmith
 
Fecha de Ingreso: abril-2010
Mensajes: 7
Antigüedad: 14 años, 7 meses
Puntos: 0
Por qué no funciona este código??

Holap:

Al parecer todo está bien... o es que acaso hay algo sobre el funcionamiento de fread( ) que desconozco?? o_O

El programa lee un pedazo de un archivo de dos formas diferentes, y luego compara si ha leido lo mismo:

Código:
#include <stdio.h>

FILE* archivo;
unsigned char arreglo[20];
unsigned char arreglo2[20];
int i=0;

int main(){
    
archivo=fopen("gigahtz.exe","rb");
if(archivo==NULL){exit(1);}
    
fread(arreglo,1,20,archivo); 

rewind(archivo);
while(i<20)
{
fread(arreglo2,1,1,archivo); 
i++;
}
i=0;


while(i<20)
{
  if(arreglo[i]!=arreglo2[i])
  {
  printf("! ");
  exit(1);
  }
i++;              
}
printf("OKAY!");

fclose(archivo);
return 0;    
}
Compila y se ejecuta, pero sólo muestra: "!", o sea, el primer byte es diferente para las lecturas...

Help pliss...

Saludooos :P