構造アラインメントは「実装固有」であることは理解していますが、構造アラインメントを計算する簡単な方法があるかどうか疑問に思っています。たとえば、次のようになります。
typedef struct
{
char c;
int i;
} test;
if sizeof(test) - (sizeof(char) + sizeof(int)) == 0 means alignment is 1 byte;
if sizeof(test) - (sizeof(char) + sizeof(int)) == 1 means alignment is 2 bytes;
// ...etc...
上記の仮定は確かに正しいですか?