C不承认var - 我必须忽略一些简单的东西。

时间:2014-01-16 19:08:36

标签: c variables for-loop microcontroller

从错误中我认为print()中的代码没有看到for()。n.b中的计数器。代码适用于Propeller微控制器。 for()过去没有问题。非常感谢

#include "simpletools.h"  // for print on my microcontroller platform
void main(void) {
    for(int x = 1; x <= 20; x++); {
        // *** error next line> error: 'x' undeclared (first use in this function)
        print("x = %d\n", x);
        high(14);
        pause(500);
        low(14);
        pause(500);
    }
}

3 个答案:

答案 0 :(得分:8)

尝试在for之后但{之前删除分号。

改变这个:

for(int x = 1; x <= 20; x++); {

到此:

for(int x = 1; x <= 20; x++) {

;结束for循环。您在代码中所做的是拥有一个完整的for循环,后跟一个不相关的代码块。 x仅在for循环的范围内可见,这意味着该错误的分号。

答案 1 :(得分:0)

你也可以试试这个:

void main(void) {
    int x = 1;
    for(; x <= 20; x++) {
        print("x = %d\n", x);
        high(14);
        pause(500);
        low(14);
        pause(500);
    }
}

答案 2 :(得分:0)

你的问题说“C语言”对吗?所以我认为你应该首先在顶部声明值“int x”。