Hỏi về ý nghĩa macro

Hi all,

Cho em hỏi vì em không hiểu chỗ macro, ý nghĩa chỗ macro là như thế nào

#define ALL_SW				(uint8_tbl[s_kino] | uint8_tbl[s_gyo] | uint8_tbl[s_ji] | uint8_tbl[s_lamp])
if((sw & ALL_SW) == uint8_tbl[s_kino])
{	
	s_kino_rpt_tm = S_KINO_RPT_TM;
	//radio_kino_flg = 1;
}

Em cám ơn.

Bạn không show giá trị cụ thể của cái uint8_tbl[] và cái sw kia có ý nghĩa gì nên hơi khó hiểu.
Ở đây chắc người ta muốn check bit của sw nằm trong case nào, uint8_tbl[s_kino] hay uint8_tbl[s_gyo]… bởi vì nếu so sánh trực tiếp sw == uint8_tbl[s_kino] có thể sẽ cho kết quả không chính xác

Dạ,

#define  s_kino  0
#define  s_gyo   1
#define  s_ji       2
#define  s_lamp 3
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?