Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ifndef BIT_ARRAY_H
- #define BIT_ARRAY_H
- typedef unsigned long bit_array_t;
- #define SIZE ((sizeof(unsigned long))*CHAR_BIT)
- #define bit_array_create(jmeno_pole,velikost) bit_array_t jmeno_pole[((velikost/(SIZE)) + (velikost%SIZE ? 1:0 )) + 1] ={[0]=velikost}
- #define bit_array_size(jmeno_pole) jmeno_pole[0]
- #define bit_array_setbit(jmeno_pole,index,vyraz) \
- do{ \
- if(vyraz == 1) \
- jmeno_pole[index/SIZE +1] |= (1 << ( (index%SIZE) -1 ) ); \
- else if(vyraz == 0) \
- jmeno_pole[index/SIZE +1] &= ( ~(1 << ( (index%SIZE) -1 ) ) ); \
- }while(0)
- #define bit_array_getbit(jmeno_pole,index) ((jmeno_pole[index/SIZE +1] & (1<< ((index%SIZE) -1)) ) ? 1:0 )
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement