找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1770|回复: 6
收起左侧

编译错误error: At end of source: #18: expected a ")"

[复制链接]
回帖奖励 1 黑币 回复本帖可获得 1 黑币奖励! 每人限 1 次
ID:1060439 发表于 2023-1-7 14:55 | 显示全部楼层 |阅读模式
void rt_fs00603a_init(void)
{
        rt_thread_t tid;

        fs00603a_mutex = rt_mutex_create("fs00603amt", RT_IPC_FLAG_PRIO);
        RT_ASSERT(fs00603a_mutex != RT_NULL);

#ifdef RT_USING_HEAP
        tid = rt_thread_create("fs00603a",
                                                        fs00603a_thread_entry,
                                                        RT_NULL,
                                                        RT_FS00603A_THREAD_STACK_SIZE,
                                                        RT_FS00603A_THREAD_PRIORITY,
                                                        20);
        RT_ASSERT(tid != RT_NULL);
        fs00603a_rx_sem = rt_sem_create("fsrxsem", 0, RT_IPC_FLAG_FIFO);
#else
        rt_err_t result;
        tid = &bt_thread;
        result = rt_thread_init(tid,
                                                        "fs00603",
                                                        fs00603a_thread_entry,
                                                        RT_NULL,
                                                        bt_stack,
                                                        sizeof(bt_stack),
                                                        RT_FS00603A_THREAD_PRIORITY,
                                                        20);
        RT_ASSERT(result == RT_EOK);
#endif

        rt_thread_startup(tid);
}


编译后报以下错误
error: At end of source:  #18: expected a ")"

此程序在另一台电脑上是可以编译通过的,设置也是一样,版本也一样。



回复

使用道具 举报

ID:277550 发表于 2023-1-8 08:45 | 显示全部楼层
检查文件编码
回复

使用道具 举报

ID:1060439 发表于 2023-1-10 09:11 | 显示全部楼层
谢谢你!
回复

使用道具 举报

ID:1078332 发表于 2023-6-5 20:37 | 显示全部楼层
void rt_fs00603a_init(void)
{
    rt_thread_t tid;

    fs00603a_mutex = rt_mutex_create("fs00603amt", RT_IPC_FLAG_PRIO);
    RT_ASSERT(fs00603a_mutex != RT_NULL);

#ifdef RT_USING_HEAP
    tid = rt_thread_create("fs00603a",
                           fs00603a_thread_entry,
                           RT_NULL,
                           RT_FS00603A_THREAD_STACK_SIZE,
                           RT_FS00603A_THREAD_PRIORITY,
                           20);
    RT_ASSERT(tid != RT_NULL);
    fs00603a_rx_sem = rt_sem_create("fsrxsem", 0, RT_IPC_FLAG_FIFO);
#else
    rt_err_t result;
    static rt_uint8_t fs00603a_stack[RT_FS00603A_THREAD_STACK_SIZE];
    tid = rt_thread_create(&tid,
                           "fs00603",
                           fs00603a_thread_entry,
                           RT_NULL,
                           fs00603a_stack,
                           sizeof(fs00603a_stack),
                           RT_FS00603A_THREAD_PRIORITY,
                           20);
    RT_ASSERT(tid != RT_NULL);
#endif

    rt_thread_startup(tid);
}
回复

使用道具 举报

ID:1078332 发表于 2023-6-5 20:37 | 显示全部楼层
void rt_fs00603a_init(void) {     rt_thread_t tid;      fs00603a_mutex = rt_mutex_create("fs00603amt", RT_IPC_FLAG_PRIO);     RT_ASSERT(fs00603a_mutex != RT_NULL);  #ifdef RT_USING_HEAP     tid = rt_thread_create("fs00603a",                            fs00603a_thread_entry,                            RT_NULL,                            RT_FS00603A_THREAD_STACK_SIZE,                            RT_FS00603A_THREAD_PRIORITY,                            20);     RT_ASSERT(tid != RT_NULL);     fs00603a_rx_sem = rt_sem_create("fsrxsem", 0, RT_IPC_FLAG_FIFO); #else     rt_err_t result;     static rt_uint8_t fs00603a_stack[RT_FS00603A_THREAD_STACK_SIZE];     tid = rt_thread_create(&tid,                            "fs00603",                            fs00603a_thread_entry,                            RT_NULL,                            fs00603a_stack,                            sizeof(fs00603a_stack),                            RT_FS00603A_THREAD_PRIORITY,                            20);     RT_ASSERT(tid != RT_NULL); #endif      rt_thread_startup(tid); }
回复

使用道具 举报

ID:1078332 发表于 2023-6-5 20:39 | 显示全部楼层
在 #else 条件分支内对 tid 进行了非法赋值。bt_thread 的类型是 struct rt_thread,而不是 rt_thread_t。
在 #else 条件分支内对 tid 进行了非法初始化。tid 的类型是 rt_thread_t,&bt_thread 并不符合 rt_thread_t 的定义。
在 #else 条件分支内对 bt_stack 和 sizeof(bt_stack) 进行了非法使用。这两个变量在这个条件分支里没有定义,应该使用正确的线程堆栈变量和大小。
回复

使用道具 举报

ID:772183 发表于 2023-6-20 09:03 | 显示全部楼层
是语法错误吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表