我在QtCreator的一个C项目中工作(是的,它主要用于C,但到目前为止,它对C来说还算可行).
现在我在一个编译好的有效代码上得到一个红色下划线:
对于虚拟COM端口,它基本上是this未更改的libopencm3示例项目.
你能看到代码中的一些问题,也许不是致命的,但是什么可能让编辑认为这是一个错误?
我尝试使用等效的typedef替换struct usb_device_descriptor,但这没有帮助.
第二行的错误说“预期”,得到了.“结束}注释为“额外的;`
这是结构声明的方式:
/* USB Standard Device Descriptor - Table 9-8 */
struct usb_device_descriptor {
uint8_t bLength;
uint8_t bDescriptorType;
uint16_t bcdUSB;
uint8_t bDeviceClass;
uint8_t bDeviceSubClass;
uint8_t bDeviceProtocol;
uint8_t bMaxPacketSize0;
uint16_t idVendor;
uint16_t idProduct;
uint16_t bcdDevice;
uint8_t iManufacturer;
uint8_t iProduct;
uint8_t iSerialNumber;
uint8_t bNumConfigurations;
} __attribute__((packed));
最佳答案 找到了一个解决方法:
在此设置页面中将“C”的值更改为Clang:
(正如m.s.在评论中指出的那样,你可能必须先到enable the model)