これは配列サイズを取得するためのマクロです
#define array_size(array) \
(sizeof( array ) / (sizeof( array[0] ) * (sizeof( array ) != sizeof(void*) || sizeof( array[0] ) <= sizeof(void*)))
通常、配列のサイズを取得するには (sizeof( array ) / (sizeof( array[0] )) で十分だと思います。
私はその部分を推測する
(sizeof( array[0] ) * (sizeof( array ) != sizeof(void*) || sizeof( array[0] ) <= sizeof(void*))
全体をゼロで割ることを避けることです。誰かが説明するのを助けることができますか?
前もって感謝します。
乾杯、