Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2010, 21:42   #1
coNsept
Форумчанин
 
Аватар для coNsept
 
Регистрация: 14.12.2009
Сообщений: 716
По умолчанию Naked функции

Доброго времени суток всем пользователям этого форума.
Возник вопрос по поводу naked функций, попытался порыть в googl'е но ничего полезного не нашел, кроме как уже использованных в программах других людей, а хотелось бы знать для чего она предназначена.
Можно ли попросить вас объяснить и показать простой пример её использования, за ранее благодарен за любую помощь.

__declspec (naked)
coNsept вне форума Ответить с цитированием
Старый 24.10.2010, 23:36   #2
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Первая ссылка из гугла
Цитата:
Сообщение от MSDN
For functions declared with the naked attribute, the compiler generates code without prolog and epilog code. You can use this feature to write your own prolog/epilog code sequences using inline assembler code. Naked functions are particularly useful in writing virtual device drivers. Note that the naked attribute is only valid on x86, and is not available on x64 or Itanium.
То бишь не генерируется пролог и эпилог для функций (команды для создания и уничтожения стекового фрейма).
netrino вне форума Ответить с цитированием
Старый 24.10.2010, 23:40   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а это входит в стандарт или выдумка от МС?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 24.10.2010, 23:44   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Это функции, для которых компилятор не генерит пролог и эпилог, отдавая их на откуп программистам. Используется, например, драйверописателями.
p51x вне форума Ответить с цитированием
Старый 24.10.2010, 23:53   #5
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
а это входит в стандарт или выдумка от МС?
Всё, что __declspec - расширения от МС. Но в любом случае, naked-функции не входят в стандарт C/C++, насколько я знаю.
netrino вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мини бэйсик:объявление функции, вызов функции , возврат. AL_LORD Помощь студентам 2 14.10.2010 17:48
Программа на СИ++, используя функции работы с файлами и функции <string.h> Аня Popova Фриланс 9 13.09.2010 15:52
Функции в си. Вывод двумерного массива из функции. Evgen51 Общие вопросы C/C++ 9 13.05.2010 03:59
Чем отличается описание функции от определения функции в С++? Go6a Помощь студентам 4 18.07.2009 18:07
Функции. Передача массива в качестве параметра функции. Wia Помощь студентам 2 17.03.2009 14:57