Вход
Наше всё
Теги
codebook
无线电组件
Поиск
Опросы
Закон
Четверг
28 ноября
О смысле всего сущего
0xFF
Средства и методы разработки
Мобильная и беспроводная связь
Блошиный рынок
Объявления
Микроконтроллеры
PLD, FPGA, DSP
AVR
PIC
ARM, RISC-V
Технологии
Кибернетика, автоматика, протоколы
Схемы, платы, компоненты
Микроконтроллеры
455509
Топик полностью
Ксения
(20.10.2013 03:04, просмотров: 73)
ответил
Ксения
на
Уже было сказано, что после case должно стоять константное выражение. Но от себя добавлю, что компилируется switch в виде двух массивов (обычно помещаемых по flash!): в одном из них перечислены case-константы, а во-втором соответствующий им список
Объявите cmd_vals, как static (тем самым зафиксировав ее место в памяти), тогда, возможно, switch воспримет выражение &cmd_vals.en, как константу :)
Ответить
Не воспримет! Это значение становится известным только на этапе сборки. Есть такое понятие перемещаемый объектный код. Именно такой код и генерируется компилятором. Или нет?
-
Bill
(20.10.2013 13:15
)
да, все указатели вроде бы заполняются линкером
-
zeleny
(20.10.2013 15:51
)