【发布时间】:2021-06-25 10:16:42
【问题描述】:
对于 C/C++ 语言,有一个约束,即数组中的每个元素都必须具有相同的类型。所以如果我们用多种类型的元素初始化一个数组,就会发生错误。这是错误语法/语法还是语义错误?
【问题讨论】:
-
C 和 C++ 是不同的语言,另请参阅您应用的标签说明。在任何情况下,请参阅 C++ 标准(或例如 cppreference.com)了解两个错误类之间的区别(如果有)。
-
@Duy Duy 这是一个语义错误。例如 C++ 中初始化器的窄化转换。
-
int a [] = {c,d,e,f};在句法和语法上都是正确的。 -
“发生错误” - 这没什么。什么错误?
-
除非询问两种语言之间的差异或交互,否则不要同时标记 C 和 C++。