您好,
我有以下do..while循环
#define NUMBER_DX_CHANNELS 4
do {
/* some some processing here */
i++;
dx_channels++;
} while((dx_channels > CHANNELS_PER_BOARD) || (i < number_fx_resources));
由于某种原因,在达到number_fx_resources之前,dx_channels应该首先达到4。但是,它永远不会突破dx_channels&gt; CHANNEL_PER_BOARD。
我可以使用if语句,但这会添加额外的代码行。
我在这里做错了吗?是因为我正在测试2个条件吗?
非常感谢任何建议,
答案 0 :(得分:3)
您需要:while((dx_channels < CHANNELS_PER_BOARD) && (i < number_fx_resources));
注意:&&
而不是||