Например TDA7294

Форум РадиоКот • Просмотр темы - Указатели на структуру
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Сб дек 27, 2025 12:08:34

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 16:33:29 
Прорезались зубы

Зарегистрирован: Чт апр 08, 2021 09:46:48
Сообщений: 225
Рейтинг сообщения: 0
Доброго времени суток! Ребят, никак не могу разобраться, знаю что здесь все просто, но до меня не доходит. В файле  stm32f103xb.h имеются обозначение регистров STM32.  К обозначены в #define как указатели на структуру (см. рисунок №1). Вопрос в следующем:

1) Для чего нужны скобки около TIM_TypeDef * (на рисунке №3 эти скобки показаны стрелкой)? Ведь указатели на структуру обьявляются без этих скобок (см. рисунок №2)


Вложения:
3.png [5.87 KiB]
Скачиваний: 106
2.png [222.96 KiB]
Скачиваний: 90
1.png [106.67 KiB]
Скачиваний: 91
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 16:41:36 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24627
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Для чего нужны скобки

Приведение типа. Это же дефайн, а не объявление.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 16:59:12 
Друг Кота

Карма: 67
Рейтинг сообщений: 1964
Зарегистрирован: Сб дек 18, 2021 19:25:32
Сообщений: 12867
Рейтинг сообщения: 0
странно, что возник вопрос с приведением, а не с со скобками корневого уровня (или как их ещё назвать, общими? глобальными? просто первыми?)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 17:46:46 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24627
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
а не с со скобками корневого уровня

Эти скобки нужны, чтобы не нарваться на неприятности при использовании дефайна. Иначе при подстановке приведение типа будет отнесено ко всей конструкции указателя на структуру.


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 18:25:06 
Прорезались зубы

Зарегистрирован: Чт апр 08, 2021 09:46:48
Сообщений: 225
Рейтинг сообщения: 0
Для чего нужны скобки

Приведение типа. Это же дефайн, а не объявление.

Теперь я совсем ничего не понимаю. Разве это не указатель на структуры? Почему это приведение типов?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 19:18:36 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24627
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Разве это не указатель на структуры?

Нет. Указатель - это тип переменной. А в данном случае определяется ("дефайнится") абсолютный адрес - то есть просто число-константа. Размерность константы нужно привести к типу указателя. Это в дефайне и сделано.
Далее подстановка дефайна в качестве имени указателя будет абсолютным адресом, а не переменной.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 19:26:08 
Прорезались зубы

Зарегистрирован: Чт апр 08, 2021 09:46:48
Сообщений: 225
Рейтинг сообщения: 0
Разве это не указатель на структуры?

Нет. Указатель - это тип переменной. А в данном случае определяется ("дефайнится") абсолютный адрес - то есть просто число-константа. Размерность константы нужно привести к типу указателя. Это в дефайне и сделано.

Примерно понял. А еще понял что мне нужно еще лучше попрактиковаться в си.
Если это приведение типов, для чего там звездочка. Может тему подскажите где это почитать?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 19:33:08 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2918
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 24627
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Если это приведение типов, для чего там звездочка?

Звездочка там потому, что это тип указателя, хоть и константа. Разыменование константы имеющей тип указателя позволяет присвоить значение по абсолютному адресу равному этой константе.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 19:36:04 
Говорящий с текстолитом

Карма: -7
Рейтинг сообщений: 187
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1661
Рейтинг сообщения: 0
для чего там звездочка. Может тему подскажите где это почитать?
Почитайте учебник по си. Раздел про указатели.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Указатели на структуру
СообщениеДобавлено: Сб июн 18, 2022 22:40:12 
Прорезались зубы

Зарегистрирован: Чт апр 08, 2021 09:46:48
Сообщений: 225
Рейтинг сообщения: 0
Спасибо


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 16


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y