为什么alignof(max_align_t)16?

问题描述 投票:2回答:1

我正在x86_64 Intel处理器上运行Debian。

gcc(Debian 8.3.0)编译以下程序

#include <stdio.h>
#include <stdalign.h>
#include <stddef.h>

int main(){
  printf("%zd\n",alignof(max_align_t));
}

和输出

16

哪种数据类型需要16字节对齐?

c memory-alignment alignof
1个回答
0
投票
在x86_64上,_Alignof(long double)==16
© www.soinside.com 2019 - 2024. All rights reserved.