ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
3 ноября
1551691 Топик полностью
AlexBi (Вчера, 08:52, просмотров: 54) ответил Nikolay_Po на Какая проблема переписать на if? Тоже так делал с GCC. Правда, не помню, почему. Что-то похожее, но немного не тот случай...
Опишу как у меня возникла потребность в таком выражении 

Есть контроллер, у него используется три канала АЦП, номера каналов заданы дефайнами CHN_A CHN_B CHN_C (в следующей ревизии платы они могут поменяться) Каналы опрашиваются автоматически, опрашиваемые каналы задаются маской в АЦП ((1<<CHN_A)|(1<<CHN_B)|(1<<CHN_C)) результаты забираются через ДМА в буфер adc. Что бы искать нужный результат написал функцию #define CHN_IDX(chn) ((chn>CHN_A?1:0)+(chn>CHN_B?1:0)+(chn>CHN_C?1:0)) и использую это так adc[CHN_IDX(CHN_A)] и тут возникает предупреждение