我已经在 C 中声明了两个同名的全局变量。它应该给出错误,因为我们不能在同一个存储类中声明同名的变量。
我在 C++ 中检查过它——它给出了编译时错误,但在 C 中没有。为什么?
以下是代码:
int a;
int a = 25;
int main()
{
return 0;
}
我想这可能是原因
但在 C++ 中情况并非如此。我认为在 C++ 中,无论变量是在全局范围内声明还是在自动范围内声明,声明和定义都是同时发生的。
任何人都可以对它进行更多说明。
现在,当我定义变量两次给它两次值时,它给了我错误(而不是一个声明和一个定义)。
代码在:现在有两个定义
int a;
int a;
int a;
int a = 25;
int main()
{
return 0;
}