C/Visual C - Convertir 2 caracteres ASCII en 1 hexa

 
Vista:

Convertir 2 caracteres ASCII en 1 hexa

Publicado por Eduardo Martins (1 intervención) el 27/11/2001 16:56:20
Que tal?
Estoy queriendo convertir 2 caracteres ASCII en uno hexadecimal. La idea es recorrer un array de a 2 y, por ejemplo, si los valores son 'A' y '3' guardar en una variable entera como 0xA3. Tiene alguna idea de como hacerlo o tiene alguna funcion que me puedan pasar? O a lo sumo, saben algun site en el que pueda buscar algo asi?

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Convertir 2 caracteres ASCII en 1 hexa

Publicado por Germán B (27 intervenciones) el 27/11/2001 21:50:34
Podés hacerlo así. Supongamos que tenés el array 'buf' y las siguientes variables:
int c1, c2, v;

sscanf(buf,"%1x%1x",&c1,&c2); // obtengo dígitos hexa
v=c2+(c1<<4); // los combino en un entero
printf("%02x\n",v); // muestro el valor en hexa

Para recorrer todo el array necesitás repetir esto pero usando desplazamientos en buf de a 2: la primera vez buf+0, después buf+2, después buf+4, y así hasta que se termine el array.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Convertir 2 caracteres ASCII en 1 hexa

Publicado por Ismael (21 intervenciones) el 29/11/2001 07:30:55
De acuerdo con el aporte de German.
¿Y si empleas el concepto de C de "campo de bits"?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar