gpt4 book ai didi

c - 在 for 循环中声明一个变量; c2000编译器出错

转载 作者:太空宇宙 更新时间:2023-11-04 01:59:26 29 4
gpt4 key购买 nike

我正在使用 C2000 编译器为 TI TMS320x DSP 开发一个 C 项目。我试图直接在 for 循环中初始化一个循环变量,但不知何故我得到了一个编译器错误:

代码:

for (int TabCnt = 0; TabCnt < 10; TabCnt++)
{
x++;
}

错误:

error #20: identifier "TabCnt" is undefined

我认为这可能是错误的编译器设置?如果我在循环外声明变量,它会完美地工作。

最佳答案

那是因为你使用的编译器只支持 C89。

此语法:

for (int TabCnt = 0; TabCnt < 10; TabCnt++)

仅在 C99 之后有效。解决方案要么启用 C99(如果支持),要么在 block 的开头声明变量,例如:

void foo()
{
int x = 0;
int TabCnt;
for (TabCnt = 0; TabCnt < 10; TabCnt++)
{
x++;
}
}

关于c - 在 for 循环中声明一个变量; c2000编译器出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29228400/

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