error: expected ‘;’, identifier or ‘(’ before ‘void’ 360 | void* wait_irq(thread_args args)
时间: 2024-03-04 13:51:57 浏览: 208
这个错误提示是因为在代码中出现了语法错误,导致编译器无法识别该行代码。具体来说,该行代码中可能存在语法错误,例如缺少分号、标识符或括号等。
从你的代码中可以看出,该行代码定义了一个名为wait_irq的函数,该函数返回一个void类型的指针,并且接受一个thread_args类型的参数。因此,你需要检查该行代码是否存在语法错误,例如拼写错误、缺少分号或括号等,并且确保thread_args类型已经被正确定义。
相关问题
error: expected declaration specifiers or ‘...’ before ‘(’ token 362 | void* wait_irq((void*)struct thread_args args)
这个错误通常是由于函数定义中的语法错误导致的。在你的代码中,`wait_irq`函数定义中的参数列表应该像这样:
```
void* wait_irq(void* args)
```
你需要将`(void*)`移动到括号内部,这样才能正确地将参数转换为`void*`类型。修改后的代码如下所示:
```
void* wait_irq(void* args)
{
struct thread_args *targs = args;
// 其他代码...
}
```
这个错误通常也出现在缺少头文件的情况下,你需要确保在文件开头包含了所有必要的头文件,例如:
```
#include <pthread.h>
#include <stdio.h>
// 其他头文件...
```
阅读全文