结构体赋值成员被覆盖
struct urb *urb; urb = usb_alloc_urb(); * urb = (struct urb){ .dev = dev, .pipe = pipe, .............. }; 跟 urb->dev = dev; urb->pipe = pipe;
是不同的,第一种方式会覆盖掉urb部分已经初始化了(由usb_alloc_urb()初始化的)的成员.