Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Что делает сия функция static void platform_free_uninit
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему
Димон Безпарольный
static void platform_free_uninit( void *ptr )
{
((void) ptr);
}

Если лень отвечать - просто посоветуйте книгу...
Realking
Цитата(Димон Безпарольный @ Dec 7 2017, 13:00) *
static void platform_free_uninit( void *ptr )
{
((void) ptr);
}

Если лень отвечать - просто посоветуйте книгу...


Да ничего она не делает

((void) ptr); чтоб компилятор не ругался, на неиспользуемую переменную
Эдди
Правильней объявить:
Код
#define _U_    __attribute__((__unused__))

А потом писать
Код
static void platform_free_uninit(_U_ void *ptr ){}

Тогда gcc не будет матюкаться (отключать предупреждения не стоит, я вообще делаю -Wall -Werror -Wextra).
Kabdim
Цитата(Эдди @ Dec 7 2017, 13:37) *
Правильней объявить:

С каких пор компиляторозависимые прагмы стали лучше универсального способа, работающего с любым компилятором?
Цитата(Димон Безпарольный @ Dec 7 2017, 13:00) *
Если лень отвечать - просто посоветуйте книгу...

Не припомню книжек в которых подобное описывалось бы. Нужно просто узнать и запомнить.
Эдди
Цитата(Kabdim @ Dec 7 2017, 14:20) *
С каких пор компиляторозависимые прагмы...

С таких, что gcc в 99% случаев используется. Если используется шланг, то он тоже прагмы gcc понимает. А со всякой фигней вроде sdcc подход особый, но там и варнингов подобных нет.
Kabdim
Порочный подход. Если нравятся прагмы, то в новом стандарте есть [[maybe_unused]].
juvf
Ни чего не делает, Заглушка. Чтоб компилятор не давал ворнинга, правильнее в определении в аргументах не указывать имена неиспользуемых переменных, а только тип

static void platform_free_uninit( void * )
{
}
HardEgor
Из книжек мне понравился Прата С., подробно разжевывает тонкие и неочевидные места.
У него есть и по С и по С++:
Язык программирования C. Лекции и упражнения 2013 Пер. с англ., 5-е издание
Язык программирования С++. Лекции и упражнения 2005 Пер. с англ.


Димон Безпарольный
Цитата(HardEgor @ Dec 8 2017, 18:08) *
Из книжек мне понравился Прата С., подробно разжевывает тонкие и неочевидные места.
У него есть и по С и по С++:
Язык программирования C. Лекции и упражнения 2013 Пер. с англ., 5-е издание
Язык программирования С++. Лекции и упражнения 2005 Пер. с англ.

Большое спасибо. Также большое спасибо всем ответившим на мой вопрос.
jcxz
Цитата(Realking @ Dec 7 2017, 12:07) *
((void) ptr); чтоб компилятор не ругался, на неиспользуемую переменную

Чтоб не ругался достаточно определить функцию как:
static void platform_free_uninit(void *) {}

Цитата(Эдди @ Dec 7 2017, 12:37) *
Правильней объявить:

неправильней.

PS: о, блин - juvf уже ответил...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.