Oracle Solaris Studio 12.2:Fortran 用户指南

4.2.3 数据类型的大小和对齐

存储和对齐始终以字节为单位。可以划分为单字节的值按字节对齐。

类型的大小和对齐取决于各种编译器选项和平台以及变量的声明方式。COMMON 块中的缺省最大对齐位置是 4 字节边界。

使用特殊选项(如 -aligncommon-f-dalign-dbl_align_all- xmemalign- xtypemap)进行编译,可以更改缺省的数据对齐和存储分配。本手册中的缺省描述假定这些选项无效。

Fortran 编程指南》提供了有关某些平台上数据类型和对齐方式特例的其他信息。

下表汇总了缺省的大小和对齐,并忽略类型和选项的其他方面。

表 4–3 缺省的数据大小和对齐(以字节为单位)

Fortran 数据类型 

大小 

缺省对齐 

COMMON 中的对齐  

BYTE X

CHARACTER X

CHARACTER*n X

COMPLEX X

COMPLEX*8 X

DOUBLE COMPLEX X

COMPLEX*16 X

COMPLEX*32 X

16 

16 

32 

8/16 

DOUBLE PRECISION X

REAL X

REAL*4 X

REAL*8 X

REAL*16 X

16 

8/16 

INTEGER X

INTEGER*2 X

INTEGER*4 X

INTEGER*8 X

LOGICAL X

LOGICAL*1 X

LOGICAL*2 X

LOGICAL*4 X

LOGICAL*8 X

请注意以下事项:

选项 -f-dalign 可强制将所有 8、16 或 32 字节数据与 8 字节边界对齐。选项 -dbl_align_all 可使所有数据与 8 字节边界对齐。如果程序依赖于这些选项的使用,则可能无法进行移植。