Empaquetado del Campo de Bits de las Estructuras



Software Primario: LabWindows/CVI Development Systems
Versión de Software Primario: 5.0
Versión de Software Primario Corregido: N/A
Software Secundario:

Problema: Si Usted declara un campo de bits de la siguiente manera:

struct
{
int a : 2;
int b : 3;
int c : 3;
} d;

y llama a la funcion sizeof(d) el resultado es 4 en lugar de 1, ¿por qué?

Solución: El tamaño de una estructura que contiene campos de bits es determinado por el tamaño de los tipos de datos de los elementos del campo de bits. El ejemplo anterior utiliza números enteros, por eso el tamaño es 4. Si el ejemplo utilizara carácteres, el tamaño sería 1.

Cuando se mezclan los campos de bits, enteros y carácteres por ejemplo, los resultados son afectados por la opción de empaquetado pragma que haya sido seleccionada.

Ligas Relacionadas:

Archivos Adjuntos:





Día del Reporte: 04/11/2000
Última Actualización: 06/08/2001
Identificación del Documento: 1WA9JS7T