繁体   English   中英

复合文字不是文字吗?

[英]is a compound literal not a literal?

来自C in a Nutshell:

第3章文字

在C源代码中, 文字是表示固定值的标记,可以是整数,浮点数,字符或字符串。 文字的类型由其值和符号决定。

这里讨论的文字不同于C99标准中引入的复合文字。 复合文字是普通的可修改对象,类似于变量。 有关复合文字的完整描述以及用于创建复合文字的特殊运算符,请参阅第5章。

因此,文字具有固定值,即其值不能被修改,而复合文字具有可修改的值。

据此,哪一个是正确的:

  • 复合文字不是文字,或
  • 文字的定义应该扩展到包括复合文字,它是固定值规则的唯一例外吗?

谢谢。

C11标准从不定义“文字”。 它只是单独提到“字符串文字”和“复合文字”。

令牌例如00.0时, Aenum { A }'\\0'被称为“常量”统称,和“整数常量”,“浮点常量”,“枚举常数”和“字符常量”分别。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM