
Guardar valor numerico en variable tipo char
Publicado por jaldonfer (31 intervenciones) el 23/11/2014 17:43:33
Hola:
Necesito definir una variable para almacenar un valor numérico que solamente ocupe 3 bytes ( el limite de los valores max y min está controlado ) El motivo de todo esto es porque utilizo un protocolo en el que el dato de una de sus estructuras solo puede medir tres bytes y puede contener un valor de 0 a 16777215
El tema es que en C no existen tipo de tres bytes de longitud y para ello he pensado crear una array tres bytes de tipo char y dentro de esta variable mediante un puntero guardar el valor decimal.
El problema es que realizo las operaciones, pero no tengo claro al 100% que lo este haciendo correctamente ya que al pintar los resultados por pantalla con printf y %x me saca valores de más de tres bytes.
- ¿ Esto es posible de realizar ?
- ¿ Cual es la forma correcta de hacerlo ?
- ¿ Hay alguna forma más sencilla de hacer esto ?
Gracias por su colaboración
Saludos
Necesito definir una variable para almacenar un valor numérico que solamente ocupe 3 bytes ( el limite de los valores max y min está controlado ) El motivo de todo esto es porque utilizo un protocolo en el que el dato de una de sus estructuras solo puede medir tres bytes y puede contener un valor de 0 a 16777215
El tema es que en C no existen tipo de tres bytes de longitud y para ello he pensado crear una array tres bytes de tipo char y dentro de esta variable mediante un puntero guardar el valor decimal.
El problema es que realizo las operaciones, pero no tengo claro al 100% que lo este haciendo correctamente ya que al pintar los resultados por pantalla con printf y %x me saca valores de más de tres bytes.
- ¿ Esto es posible de realizar ?
- ¿ Cual es la forma correcta de hacerlo ?
- ¿ Hay alguna forma más sencilla de hacer esto ?
Gracias por su colaboración
Saludos
Valora esta pregunta


0