Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Указатель на массив указателей на функций в CodeVision
Отправлено
Fm
23 декабря 2008 г. 13:14
Возник вопрос в дополнении к вопросу об
указателе на массив указателей на строк -
который благодоря помощи был решен.
Просьба подсказать по возможности.
Имеем массив указателей на функции:
typedef void (*pF) (void);
flash pF flash pArrFunc [] =
{
Menu01,
Menu02
};
pF Func;
...
void Menu01 (void)
{
...
}
void Menu02 (void)
{
...
}
Затруднение в обьявлении указателя
на массив указателей на функции
(глобального или как члена структуры)
С локальным обьявлением указателя нижеследующий вариант рабочий:
void main (void)
{
// локальный рабочий вариант
pF **pFunc;
pFunc = pArrFunc;
...
// Menu01
Func = pFunc [1];
...
// отрабатываем функцию - Menu01
Func ();
}
при глобальном обьявлении, ошибка при компиляции
pF **pFunc;
void main (void)
{
// a value of type 'void (*[])()' can't be assigned to an entity of type 'unsigned int *(*)()'
pFunc = pArrFunc;
...
}
Возможно изначально неверный вариант обьявления.
Спасибо.
Составить ответ
|
Вернуться на конференцию
Ответы
Проблема решилась переходом
-
Fm
(25.12.2008 13:26:12
10.10.10.3,78.85.28.109
, 437 байт)
Сразу непонятка: pF **pFunc; pF это уже указатель, а Вы еще две * дали ему.
-
Quasy
(23.12.2008 13:30:21
192.168.0.207,80.243.9.34
,
пустое
)
Возможно вариант не верен
-
Fm
(23.12.2008 13:35:49
10.10.10.0,78.85.28.109
, 159 байт)
В ИАРе получилось только через переприсвоение, (+)
-
Quasy
(23.12.2008 14:41:18
192.168.0.207,80.243.9.34
, 1431 байт)
Вообще подобных массивов несколько
-
Fm
(23.12.2008 15:46:24
10.10.10.0,78.85.28.109
, 274 байт)
Посмотрел подробно, не совсем
-
Fm
(23.12.2008 15:35:35
10.10.10.0,78.85.28.109
, 650 байт)
Можно и вот так свирепо запускать :) (+)
-
Quasy
(23.12.2008 17:28:49
192.168.0.207,80.243.9.34
, 1622 байт)
Спасибо, интересный вариант :) Завтра проверю и
-
Fm
(23.12.2008 19:27:23
78.85.234.238
, 281 байт)
Проверил и в Кейле, заменив словечко __flash на code. ОК.
-
Quasy
(24.12.2008 11:10:33
192.168.0.207,80.243.9.34
,
пустое
)
Если по возможности
-
Fm
(24.12.2008 13:23:21
10.10.10.11,78.85.28.109
, 116 байт)
Спасибо за ответ
-
Fm
(23.12.2008 14:54:13
10.10.10.0,78.85.28.109
, 45 байт)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
поделите 6 на два:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru