Wymusza ścisłe spakowanie struktury C ++

Próbuję odczytać plik binarny. Problem polega na tym, że twórca pliku nie potrzebował czasu, aby odpowiednio dopasować struktury danych do ich naturalnych granic i wszystko jest spakowane szczelnie. Utrudnia to odczyt danych przy użyciu struktur C ++.

Czy istnieje sposób na wymuszeniestruct być ciasno zapakowanym?

Przykład:

struct {
    short a;
    int b;
}

Powyższa struktura ma 8 bajtów: 2 dlashort a, 2 do wypełnienia, 4 doint b. Jednak na dysku dane mają tylko 6 bajtów (nie mają 2 bajtów wypełnienia do wyrównania)

Należy pamiętać, że rzeczywiste struktury danych to tysiące bajtów i wiele pól, w tym kilka tablic, więc wolałbym nie czytać każdego pola osobno.

questionAnswers(2)

yourAnswerToTheQuestion