| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
Programación  
  • C /C + + Programming

  • Lenguajes De Programación

  • Delphi Programación

  • Programación Java

  • JavaScript Programación

  • Programación PHP /MySQL

  • Perl Programming

  • Python Programming

  • Rubí Programación

  • Visual Basics Programación
  •  
    Conocimientos Informáticos >> Programación >> C /C + + Programming >> Content
    Cómo quitar el relleno de una estructura C
    memoria de computadora está generalmente alineado con un límite igual en tamaño al sistema de tamaño de palabra . En un sistema de 32 bits hipotética , imagina que este tamaño de palabra es de cuatro bytes de longitud. En el lenguaje C , se pueden crear estructuras que almacenan datos . Con el fin de alinearlos con el tamaño de la palabra , el compilador de C puede agregar relleno a la estructura. Puede eliminar este relleno mediante una directiva de preprocesador que le indica que debe alinear los datos de manera diferente . Cosas que necesitará
    C Entorno de desarrollo integrado , como Eclipse CDT
    C Compiler , tal GCC
    Mostrar más instrucciones
    1

    Cargue el IDE de C al hacer clic en el icono del programa . Cuando se abre, seleccione " Archivo /Nuevo /Proyecto " y selecciona "Proyecto C " para crear un nuevo proyecto C . Un archivo de código fuente en blanco en la parte de edición de texto de la IDE.
    2

    Crear un " struct " llamado "A" con la alineación predeterminada de la memoria . Escriba la siguiente instrucción al principio del archivo de código fuente:

    struct { } A;
    3

    Añada algunos miembros de datos a la estructura "A" Al mezclar enteros y tipos de caracteres , que se aseguran de que el compilador rellena la estructura. En un sistema de 32 bits , los dos primeros tipos de datos int cada ocupan cuatro bytes de memoria y están perfectamente alineados como se muestran . Sin embargo , los dos tipos de datos char cada ocupan un solo byte , y juntos ocupan dos bytes de datos . El compilador pad esto con dos bytes de datos de la chatarra para alinear los datos correctamente. Agregue las siguientes instrucciones a struct "A" por su inclusión entre los corchetes después de la palabra

    int a " struct ". ;

    Int b;

    char a ;

    caracteres b;
    4

    Crear una directiva de preprocesador que le indica que debe alinear con el límite de 1 byte , no el límite de 4 bytes :

    # pragma paquete (push , 1 )
    5

    Crear otra estructura, éste llamado "B ", y lo coloca inmediatamente después de la directiva de preprocesador escrito en el paso anterior.

    struct { } B;
    6

    Rellene struct "B " con los mismos tipos de datos como estructura "A ", al escribir las siguientes declaraciones dentro de los corchetes de la estructura " B. " Estos tipos de datos se alinearán al byte más próximo, que pasa a ser 10 ( cuatro para cada int , uno para cada char) . No habrá relleno en esta estructura

    int a; .

    Int b;

    char a ;

    caracteres b;
    < br > 7

    Reiniciar la alineación de nuevo a su valor predeterminado por escrito la siguiente declaración :

    # pragma pack (pop )

    Previous :

    next :
      Artículos relacionados
    ·Cómo construir una aplicación móvil que utiliza una …
    ·Cómo configurar Bytes para recibir datos numéricos ut…
    ·Cómo escribir una declaración de caso en C + + 
    ·Cómo escribir un programa para convertir minúsculas a…
    ·Cómo declarar una constante estática en C 
    ·Cómo crear un histograma utilizando C Código de progr…
    ·Cómo detectar el golpe del Mic en xCode 
    ·Cómo iniciar un Código C Desde el símbolo del sistem…
    ·¿Qué es un encabezado Ctype 
    ·Cómo leer un archivo XLS con un programa de C 
      Artículos destacados
    ·Cómo hacer que un navegador Web con Visual Basic 
    ·Cómo escribir un programa simple Easytrieve 
    ·Cómo Desvincular archivos en Linux 
    ·Excepciones Java Tutorial 
    ·Cómo crear una sentencia if en Python 
    ·Cómo agregar importación a un archivo JSP 
    ·Cómo escribir funciones de cadena en Python 
    ·Microsoft Word VBA Tutorial 
    ·Cómo enviar SMS a través de PHP 
    ·Cómo generar combinaciones de Java 
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com