Поделиться через


Ошибка компилятора C2344

align(#): выравнивание должно быть степенью двух

При использовании ключевого слова align передаваемое значение должно быть степенью двух.

Например, приведенный ниже код вызывает ошибку C2344, так как число 3 не является степенью двух.

// C2344.cpp
// compile with: /c
__declspec(align(3)) int a;   // C2344
__declspec(align(4)) int b;   // OK