Влияет ли alignas на значение sizeof?

#include <iostream>
using namespace std;

int main()
{
    alignas(double) unsigned char c[1024];   // array of characters, suitably aligned for doubles
    alignas(16) char d[100];            // align on 16 byte boundary
    cout<<sizeof(c)<<endl;
    cout<<sizeof(d)<<endl;
    constexpr int n = alignof(int);     // ints are aligned on n byte boundarie
    cout<<n<<endl;
}

Вот код, дляalignas(double) unsigned char c[1024];это означаетc должны быть выровненыdouble,double является8 байт. Я так думаюsizeof(c) должно быть1024*8 байт, но вывод консоли1024.

Так что я в замешательстве. Кто может сказать мне причину?

Ответы на вопрос(2)

Ваш ответ на вопрос