Microchip
直播中

h1654155275.5842

7年用户 273经验值
私信 关注
[问答]

错误:for循环初始声明仅允许在C99模式下解决

我刚才拉了一段代码,我写了一会儿,我得到以下错误:错误:“为”循环初始声明只允许在C99模式我如何允许“C99模式”?谢谢。

以上来自于百度翻译


      以下为原文

    I've just pulled in sum code i wrote a while back and i'm getting the following error:

error: 'for' loop initial declarations are only allowed in C99 mode

How do I allow "C99 mode"?



long power (long number, long order)
{
    long result = number;
    for (unsigned int n = 0; n < (order - 1); n++)
    {
        result = result * number;
    }

    if (order == 0)
    {
        result = 1;
    }
    return (result);
}



Thanks.

回帖(12)

王焕树

2019-3-14 06:21:39
XC16是一个“C89”编译器,有几个C99扩展。我认为XC16根本没有C99模式。这是一个尴尬的说法,“这是一个C99的特点,我根本不支持”。

以上来自于百度翻译


      以下为原文

    XC16 is a "C89" compiler, with a few C99 extensions.
I don't think there is a C99 mode in XC16 at all. That's an awkward way of saying "that is a C99 feature that I don't support at all".
 
举报

王璨

2019-3-14 06:40:35
ProjtualProjys:编译器OpthCopySCAN不记得该选项的确切名称,但是单击一位应该会成功。

以上来自于百度翻译


      以下为原文

    project properties | compiler options
Cannot recall the exact name of the option but clicking a bit should result in success.
举报

李兆峰

2019-3-14 06:46:46
事实上,我从来没有觉得有必要这样做。”“本地化变量”,是的,哦…

以上来自于百度翻译


      以下为原文

    I actually never felt the need for that feature. "localizing variables", yeah, oh well...
举报

王焕树

2019-3-14 07:00:00
你确定?在最新的XC16用户指南中没有提到它。

以上来自于百度翻译


      以下为原文

   
Are you sure? There's no mention of it in the latest XC16 User Guide.
 
举报

更多回帖

发帖
×
20
完善资料,
赚取积分