Hatalar, hatalar, sorular - sayfa 2498

 
Andrei Trukhanovich :

Bu durumda, IMHO, olmamalı.

Burada büyüklük neden dördün katı olmasın?

Sınıfların hizalanabileceği ortaya çıktı.

 
fxsaber :

Burada büyüklük neden dördün katı olmasın?

Sınıfların hizalanabileceği ortaya çıktı.

çünkü bu içsel uyumdur. bir sonraki harici değişken, yapının boyutundan bağımsız olarak muhtemelen hizalama 8'de tahsis edilecektir.

 
Andrei Trukhanovich :

çünkü bu iç hizalama

O zaman korkarım hizalamanın anlamı kaybolur

 struct A pack( 4 )
{
   short j;
};

void OnStart ()
{
   Print ( sizeof (A)); // 2
  
   const int handle = FileOpen ( __FILE__ , FILE_WRITE | FILE_BIN );
  
   if (handle != INVALID_HANDLE )
  {
    A a = { 0 };
    
     FileWriteStruct (handle, a);
     Print ( FileTell (handle)); // 2
    
     FileClose (handle);
  }
}
 
fxsaber :

O zaman korkarım hizalamanın anlamı kaybolur

hizalamanın anlamı, dahili değişkenlerin adreslerinin hizalamanın bir katı olmasıdır.

 
Andrei Trukhanovich :

hizalamanın anlamı, dahili değişkenlerin adreslerinin hizalamanın bir katı olmasıdır.

İfadenizi ve Documentation'ı karşılaştırmaya çalıştım ama anlamadım.

 
Andrei Trukhanovich :

Görünüşe göre bitmemiş bir ürün. Sonuçta, bu açıkça bir hatadır:

 struct A pack( 4 )
{
   short j;
};

void OnStart ()
{
   A q[ 2 ];
   Print ( sizeof (q)); // 4
   return ;
}
 
fxsaber :

İfadenizi ve Documentation'ı karşılaştırmaya çalıştım ama anlamadım.

bence, yardım güncellenmedi, görünüşe göre C# desteğinin göründüğü yapıda (kışın?) hizalamanın şimdi nasıl çalıştığına dair bir açıklama vardı

burada habré googled hakkında, hizalama hakkında bir makale var, bence MT5'te de çalışacak https://habr.com/en/post/142662/

 
Igor Makanu :

bence, yardım güncellenmedi, görünüşe göre C# desteğinin göründüğü yapıda (kışın?) hizalamanın şimdi nasıl çalıştığına dair bir açıklama vardı

burada habré googled hakkında, hizalama hakkında bir makale var, bence MT5'te de çalışacak https://habr.com/en/post/142662/

Makaleyi ve yorumlarını harcadı. Hizalama algoritması hiç net değil. Pack(4) buna değer, ancak nedense bir şey 2'ye, bir şey 4'e hizalanmış.

 
fxsaber :

Makaleyi ve yorumlarını harcadım. Hizalama algoritması hiç net değil. Pack(4) buna değer, ancak nedense bir şey 2'ye, bir şey 4'e hizalanmış.

Neden rahatsız? Tek hizalama daha önce olduğu gibi varsayılandır (ve değişmesi olası değildir), paket belirteci bir eğridir. Gerçekten ihtiyacınız varsa, eklentiyi kendiniz ekleyebilirsiniz.

 
Vict :

Neden rahatsız? Tek hizalama daha önce olduğu gibi varsayılandır (ve değişmesi olası değildir), paket belirteci bir eğridir. Gerçekten ihtiyacınız varsa, eklentiyi kendiniz ekleyebilirsiniz.

Anlamak istiyorum.

Neden: