6

次の c 言語の構造体定義があるとします。

typedef struct PackTest {
    long long a;
    int b;
    int c;
} PackTest;

Clang-Tidy は次のメッセージを表示します。

構造体 'PackTest' 内のフィールドへのアクセスは、アライメントが不十分なため非効率的です。現在は 8 バイトにアラインされていますが、推奨されるアラインメントは 16 バイトです

構造体が 8 バイトにアラインされている理由はわかっていますが、提案が有効かどうか、およびその理由はわかりません。

4

2 に答える 2

2

-altera-struct-pack-alignClang-Tidy に追加して、この警告を無効にすることができます

ソース: https://www.mail-archive.com/cfe-commits@lists.llvm.org/msg171275.html

于 2021-04-02T12:09:12.170 に答える