gpt4 book ai didi

c++ - 为什么 C 编译器不在 for 循环体内给出重新声明错误?

转载 作者:可可西里 更新时间:2023-11-01 18:16:56 25 4
gpt4 key购买 nike

<分区>

在C语言中,如果我们这样写:

for(int i = 0; i < 7; i++)
{
// for loop Body
}

变量i 的范围在for 循环体内。没关系。

但是,如果我这样写:

for(int i = 0; i < 7; i++)
{
long int i = 1; // Redeclaration of i
}

这里,变量i在循环体内再次声明,但它在C中成功编译和运行。

但是,在 C++ 中,编译器会给出一个“redeclaration of 'long int i'”错误。

那么,为什么 C 编译器不给出重声明错误呢?是编译器错误吗?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com