Recherche pour Modèle Binaire en C (Lire en tampon de fichier binaire)

Hé là. Je suis en train d'écrire un petit programme qui va lire les quatre octets après la dernière occurrence de "0xFF 0xC0 0x00 0x11" qui peut être facilement converti en binaire ou décimal. Le but est que les 2 à 5 octets à la suite de la dernière occurrence de ce modèle hexagonal représentent la largeur et la hauteur d'un fichier JPEG.

#include <stdio.h>

 int main () {
  FILE * pFile;
  long lSize;
  char * buffer;
  size_t result;

  pFile = fopen ( "pano8sample.jpg" , "rb" );
  if(pFile==NULL){
   fputs ("File error",stderr);
   exit (1);
  }

  fseek (pFile , 0 , SEEK_END);
  lSize = ftell (pFile);
  rewind (pFile);

  printf("\n\nFile is %d bytes big\n\n", lSize);

  buffer = (char*) malloc (sizeof(char)*lSize);
  if(buffer == NULL){
   fputs("Memory error",stderr);
   exit (2);
  }

  result = fread (buffer,1,lSize,pFile);
  if(result != lSize){
   fputs("Reading error",stderr);
   exit (3);
  }

  //0xFF 0xC0 0x00 0x11 (0x08)

  //Logic to check for hex/binary/dec

  fclose (pFile);
  free (buffer);
  return 0;
 }

Le problème est que je ne sais pas comment lire le tampon de la mémoire de manière récursive et d'utiliser le plus lu récemment variable comme un int pour comparer avec mon binaire/hexadécimal/dec.

Comment puis-je faire cela?

InformationsquelleAutor Supernovah | 2009-10-09