我正在通过 STM32 MCU 上的 USB 驱动程序的代码实现。我对 C 语言的理解有点有限,我遇到了这个我不清楚的函数定义。
static enum usbd_request_return_codes cdcacm_control_request(
usbd_device *usbd_dev __attribute__((unused)),
struct usb_setup_data *req,
uint8_t **buf __attribute__((unused)),
uint16_t *len,
void (**complete)
(
usbd_device *usbd_dev,
struct usb_setup_data *req
) __attribute__((unused))
)
我不明白函数声明中的最后一个参数,它似乎实际上是在为参数定义另一个函数,并采用奇怪的两个星号作为参数。有人可以解释这是什么以及如何在实际的函数调用中使用它吗?