在':'标记之前预期';'

时间:2014-03-20 01:55:01

标签: c gcc switch-statement

我已经简化了我的问题而且仍然难过。我正在编译下面的代码:

cc -c test.c -g

尽管gcc也是如此。 test.c中的代码是:

set_nds(value)
int value;
{
    int val;
    int one,zero;

    val = 1;
    switch(val)
        {
        1:
            one = 1;
            break;
        }

    return(1);
}

我收到错误:

> gcc -c test.c -g

test.c: In function ‘set_nds’:
test.c:11:4: error: expected ‘;’ before ‘:’ token
   1:
    ^

我必须做些蠢事,但我无法弄清楚它是什么。

1 个答案:

答案 0 :(得分:3)

您可以修复代码中的一些内容。

首先,你的函数定义,你应该在( )中定义参数类型,并且还包括返回类型。

int set_nds(int value){
    // and so forth...
}

其次,switch语句中需要case个关键字:

switch(val){
    case 1:
        one = 1;
        break;
}
// and so forth...