• ISO/IEC 9899:2011 条款6.7.5——对齐说明符


    6.7.5 对齐说明符


    语法

    1、alignment-specifier:

            _Alignas    (    type-name    )

            _Alignas    (    constant-expression    )


    约束

    2、一个对齐属性不应该在一个typedef,或一个位于,或一个函数,或一个形参,或一个具有register存储类说明符的对象的声明中指定。

    3、常量表达式应该是一个整数常量表达式。它应该对一个有效的基础对齐,或者对一个有效的扩展对齐,或是对零进行计算。该有效扩展对齐由该常量表达式所出现的上下文中,通过实现支持。

    4、在一个声明中所有对齐属性的绑定效果不应该指定一个对齐,该对齐比起正在声明的对象或成员的类型所需的对齐要求,更不严格。

    语义

    5、第一种形式等价于 _Alignas (_Alignof ( type-name ))

    6、所声明的对象或成员的对齐要求,取出作为指定的对齐。指定为零的对齐没有效果。[注:指定为零的对齐对同一声明中的其它对齐说明也没有任何影响。]当在一个声明中发生多个对齐说明符时,有效的对齐要求是最严格的对齐要求。

    7、如果一个对象的定义具有一个对齐说明符,那么那个对象的任何其它声明应该要么指定等价的对齐,要么不具有对齐说明符。如果一个对象的定义不具有一个对齐说明符,那么那个对象的任何其它声明应该不具有对齐说明符。如果一个对象在不同翻译单元中的声明具有不同的对齐说明符,那么行为是未定义的。

  • 相关阅读:
    数组对象---数据存储
    运行vue项目时,无法自动打开页面怎么办?
    数组扁平化
    数组去重
    CSS-----------text-transform
    CSS3-----width:max-content,min-content和fit_content属性
    可迭代对象
    bit和byte的 区别?
    前端常见跨域问题?
    HackerRank "Lucky Numbers"
  • 原文地址:https://www.cnblogs.com/zenny-chen/p/4946742.html
Copyright © 2020-2023  润新知