warning: passing argument 1 of 'ERR_PTR' makes integer from pointer without a cast
时间: 2023-04-08 09:03:14 浏览: 109
这是一个技术问题,我可以回答。这个警告是因为 ERR_PTR 函数的第一个参数需要是一个整数类型,但是你传递了一个指针类型的参数。你需要将指针类型的参数转换为整数类型,然后再传递给 ERR_PTR 函数。
相关问题
passing argument 3 of 'print_camera_dtc_log' makes integer from pointer without a cast
这个错误通常是因为您在使用函数时传递了错误类型的参数。函数的第三个参数应该是一个整数,但您传递了一个指针。您需要将指针转换为整数类型,或者检查您传递给函数的参数是否正确。
例如,如果您有以下函数:
```
void print_camera_dtc_log(int camera_id, int dtc_code, int log_level) {
// 打印相机ID、故障码和日志级别
}
```
您可能会像这样调用该函数:
```
int *dtc_code_ptr = get_camera_dtc_code(camera_id);
print_camera_dtc_log(camera_id, dtc_code_ptr, LOG_LEVEL_DEBUG);
```
这里,您传递了一个指向 `int` 类型的指针 `dtc_code_ptr`,而不是 `int` 类型的故障码。要解决这个问题,您可以将指针转换为整数:
```
print_camera_dtc_log(camera_id, (int)dtc_code_ptr, LOG_LEVEL_DEBUG);
```
或者,您可以检查 `get_camera_dtc_code` 函数是否返回了正确的类型。
warning: passing arg 1 of `wait' makes pointer from integer without a cast
这个警告是因为您在调用 `wait()` 函数时,传递给它的参数类型不正确。`wait()` 函数的参数应该是一个指向整型值的指针,用于存储子进程的退出状态。您可能传递了一个整型值而不是指针,导致编译器发出警告。请确认您传递给 `wait()` 函数的参数类型正确,并且指针指向的内存已经被正确地分配和初始化。