【发布时间】:2021-12-28 15:28:33
【问题描述】:
该问题的现有答案对我来说没有一个更清楚。我不知道当一个变量被声明为“在 x 字节的边界内”时它应该是什么意思,这是每个问题中关于这个问题的答案。我需要一个实际的解释,举例说明它是什么,与没有该属性声明的变量相比它做了什么,以及为什么应该使用它。
额外问题:当在像这里 __attribute__ ((aligned (32))) double output[4]; 这样的数组前面使用时,这是否意味着数组的每个元素都对齐,或者只是整个数组?
提前致谢。
【问题讨论】:
-
__attribute__不是 C++ 关键字。这可能是您正在使用的编译器的一个功能。您应该指定您的编译器,否则答案将基于猜测。 -
参见例如songho.ca/misc/alignment/dataalign.html 关于对齐是什么
-
"我需要一个实际的解释,并举例说明它是什么" 你知道什么是“字节”吗?你知道字节“边界”是什么吗?
标签: c++ memory-alignment