繁体   English   中英

错误:在 '*' 标记之前应为 ')'

[英]error: expected ')' before '*' token

我有一门课叫traffic.c

#include <linux/sched.h>
#include <asm/unistd.h>
#include <sys/mman.h>    

    struct cs1550_sem{
        int value;
     };
    void down(cs1550_sem* sem) //error
    {
        syscall(_NR_cs1550_down, sem);
    }
    void up(cs1550_sem* sem) //error
    {
        syscall(__NR_cs1550_up, sem);   
    }
    int main(){
        struct cs1550_sem sample;
        sample->value = 0;
        down(sample);
        up(sample);
        return 0;
    }

我在 sys.c、unistd.c 的其他地方声明了 sys 调用,并将它们放在 sys 调用表中。 我不知道为什么 void 函数给我这个错误。 我检查了以前的答案并尝试了他们的解决方案,但无济于事。

您在任何使用它的地方都需要struct cs1550_sem - 您得到的错误与它没有出现在函数原型中有关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM