• ornek vermek gerekirse;

    type

    tpoint = record
    x:byte;
    y:byte;
    end;

    align opsiyonu acikken 8 byte yer kaplarken; $oyle yazilirsa:

    tpoint = packed record
    x:byte;
    y:byte;
    end;

    2 byte yer kaplar..
  • (bkz: packing)
  • pascal'da align edilmemesi gereken record'lara verilen isim.. "packed record" belirtilmedigi takdirde default olarak compiler'lar 2 byte'tan tutun da 8 byte'a kadar alignment (ki biz buna okuz alignment diyoruz) yapabilirler..

    genelde belli formattaki dosya header'larini okumak icin gerekli bir ibaredir.. kullanimi $oyledir:

    type
    // aha $u 2 byte yer kaplayacakken
    hede = packed record
    x,y:byte;
    end;
    // $u delphi'de 16 byte yer kaplayacaktir
    hede2 = record
    x,y:byte;
    end;

    alignment hayvani performans arti$i sagladigindan compiler option'larla alignment disable etmek yerine (logo yazilim programcilari gibi), packed record ibaresini kullanmak daha sagliklidir.
  • ing. ağzına kadar dolu
hesabın var mı? giriş yap