tengo un problema para leer un archivo BMP de 24 bits lo que tengo es lo siguiente:<br
/>#include <fstream>
<br />#include <stdio.h>
<br />#include <stdlib.h>
<br />#include <iostream><br />using namespace std;
<br /> <br />typedef struct cabecera{
<br /> char ident[2];
<br /> unsigned long int tam;
<br /> char reservado[4];
<br /> unsigned long int offset;
<br />}cabecera;<br /><br /> int main(void){<br /> <br />   cabecera* a =
new cabecera;<br />    ifstream file("1.bmp",
ios::in|ios::binary);<br />    file.read(
reinterpret_cast<char*>(a), sizeof(cabecera) );<br />}<br />esta rutina lo que me
hace es poner en la variable ident los dos primeros bites BM pero despues <br />lo que
me pone es cascara en los otros atributos.<br /><br />Sin embargo lo leo campo por campo
o sea <br />int main(void){<br />  <br />    char ident[2]; <br />
   unsigned long int tam; <br />   char reservado[4]; <br />
   unsigned long int offset;  <br />    ifstream
file("1.bmp", ios::in|ios::binary);<br />    file.read( ident, 2
);<br />   le.read( reinterpret_cast<char*>(&tam), 4 );<br
/>   le.read( reservado, 4);<br />   le.read(
reinterpret_cast<char*>(&offset),4 );<br /> }<br />esta rutina me llena los
campos con sus valores reales: <br />Mi pregunta es existe algun problema cuando leo una
estructura o cuando leo datos primitivos<br />Saludos y gracias.<br /> <br />Lester
Arturo Oropesa Morales<br />Informatica(3ro)<br />UCF Carlos Rafael Rodriguez<br /><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<p></p>
<hr>
<p>Participe en Universidad 2010,<br>
del 8 al 12 de febrero del 2010<br>
La Habana, Cuba<br>
http://www.universidad2010.cu<br>
http://www.universidad2010.com</p>

</body>
</html>