阅读:1289回复:0
有关GET_ISO_URB_SIZE宏的问题
#define GET_ISO_URB_SIZE(n) (sizeof(struct _URB_ISOCH_TRANSFER)+\sizeof(USBD_ISO_PACKET_DESCRIPTOR)*n)
1. 请问这个宏定义中“+\”表示什么意思? 2. struct _URB_ISOCH_TRANSFER里面定义的USBD_ISO_PACKET_DESCRIPTOR类型数组不是已经包含了一个元素(当宏定义参数n大于0时)吗,如果还用sizeof(USBD_ISO_PACKET_DESCRIPTOR)*n来计算这个数组的大小,不是多计算了一个USBD_ISO_PACKET_DESCRIPTOR吗?因为在求sizeof(struct _URB_ISOCH_TRANSFER)时已经把这个元素计算进去了。所以我认为应该是sizeof(USBD_ISO_PACKET_DESCRIPTOR)*(n-1),各位大虾,我的看法对吗? |
|