реклама на сайте
подробности

 
 
> Указатель на функцию
dimka76
сообщение Dec 24 2015, 14:12
Сообщение #1


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Здравствуйте.

Есть указатель на функцию
Код
uint32_t (*ext_func)(t_ext_func* p_ef);


Хочу присвоить ему числовое значение.
Делаю это так

Код
ext_func = 0x10000000;


Компилятор выдает предупреждение о несоответствии типов.

Как правильно выполнить приведение типов ?


--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 2)
mvek
сообщение Dec 24 2015, 14:33
Сообщение #2





Группа: Участник
Сообщений: 7
Регистрация: 21-10-15
Пользователь №: 88 964



Как то так
ext_func my_ext_func = (ext_func) 0x10000000;
Go to the top of the page
 
+Quote Post
dimka76
сообщение Dec 25 2015, 07:09
Сообщение #3


developer
****

Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032



Цитата(mvek @ Dec 24 2015, 17:33) *
Как то так
ext_func my_ext_func = (ext_func) 0x10000000;


Спасибо, примерно так и сделал в итоге.
Код
#define    RAM_FUNC_ADDR        (0x10000000ULL)
typedef uint32_t (*e_func)(t_ext_func* p_ef);
e_func ext_func = (e_func)RAM_FUNC_ADDR;



--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 23:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01372 секунд с 7
ELECTRONIX ©2004-2016