ANSI C 标准第 6.3.2.2 节的约束部分包括以下短语:
每个参数都应具有一个类型,以便可以将其值分配给具有其相应参数类型的非限定版本的对象。
那么,“类型的不合格版本”一词是什么意思?
ANSI C 标准第 6.3.2.2 节的约束部分包括以下短语:
每个参数都应具有一个类型,以便可以将其值分配给具有其相应参数类型的非限定版本的对象。
那么,“类型的不合格版本”一词是什么意思?
C99 草案包含以下语言,关于“合格”一词的使用:
到目前为止提到的任何类型都是非限定类型。每个非限定类型都有其类型的几个限定版本,对应于 , 和 限定符中的一个、两个或所有三个
const
的volatile
组合restrict
。类型的合格或不合格版本是属于同一类型类别并具有相同表示和对齐要求的不同类型。
因此,您的报价说具有 a 的参数const int
必须与 type 的值匹配int
,依此类推。
无需费心检查规范,我会大胆猜测它与例如const
或volatile
关键字有关。
例如,如果你有一个 type 的参数const int
,你应该能够将它分配给一个 type 的变量int
(没有const
限定符)。