gpt4 book ai didi

c - 'for' 循环初始声明中的静态变量

转载 作者:太空狗 更新时间:2023-10-29 15:13:03 25 4
gpt4 key购买 nike

想知道为什么我不能在 for 循环初始化中声明一个静态变量,如下所示,

for(static int i = 0;;)

用我的 C99 标准编译器编译上面的循环语句代码我看到下面的错误,

error: declaration of static variable ‘i’ in ‘for’ loop initial declaration

最佳答案

C不允许

C11dr 6.8.5 迭代语句 3

for 语句的声明部分只能为存储类为autoregister 的对象声明标识符。

(不是static)


通常情况下,代码不会因为能够拥有一个static 的迭代器而受益。


存储类说明符:

typedef
extern
static
_Thread_local
auto
register

关于c - 'for' 循环初始声明中的静态变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21121327/

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