Читайте также:
|
|
DWORD dwFlags. // heap allocation control flags - свойства блока
DWORD dwBytes // number of bytes to allocate - размер блока
):
Параметры выделяемого блока памяти в таком случае задаются системой программирования,
и пользователь лишен возможности задавать их напрямую. С другой
стороны, если это необходимо, функции API можно вызывать прямо в тексте программы:
unsigned char * ptr = (LPVOID) HeapAllocC GetProcessHeapO. 0. 256):
В этом случае программирование вызова немного усложняется, но получаемый
конечный результат будет, как правило, короче и, что самое важное, работать будет
эффективнее. Следует отметить, что далеко не все возможности API доступны
через обращения к функциям системы программирования. Непосредственное обращение
к API позволяет пользователю обращаться к системным ресурсам более
эффективным способом. Однако это требует знания функций API, количество которых
нередко достигает нескольких сотен.
Как правило, функции API не стандартизированы. В каждом конкретном случае
набор вызовов API определяется, прежде всего, архитектурой операционной системы
и ее назначением. В то же время, принимаются попытки стандартизировать
некоторый базовый набор функций, поскольку это существенно облегчило бы перенос
приложений с одной операционной системы на другую. Таким примером
может служить очень известный и, пожалуй, один из самых распространенных стандарт
POSIX. В этом стандарте перечислен большой набор функций, их параметров
и возвращаемых значений. Стандартизированными, согласно POSIX, являются
не только обращения к API, но и файловая система, организация доступа к
внешним устройствам, набор системных команде Использование в приложениях
этого стандарта позволяет в дальнейшем легко переносить такие программы с одной
операционной системы в другую путем простейшей перекомпиляции исходного
текста.
Частным случаем попытки стандартизации API является внутренний корпоративный
стандарт компании Microsoft, известный как WinAPI. Он включает в себя следующие
реализации: Win 16, Win32s, Win32, WinCE. С точки зрения WinAPI
(в силу ряда идеологических причин графический, то есть «оконный», интерфейс
пользователя обязателен) базовой задачей является окно. Таким образом, стандарт
WinAPI изначально ориентирован на работу в графической среде. Однако
базовые понятия дополнены традиционными функциями, в том числе частично
поддерживается стандарт POSIX.__
Дата добавления: 2014-12-19; просмотров: 106 | Поможем написать вашу работу | Нарушение авторских прав |