Описание функций C (Си) / C++ - alloca


#include требуется только для объявления
функции


char *alloca(size);
unsigned size; захваченные байты из стека

Описание.

Процедура alloca захватывает байты size из стека программы.
Захваченное пространство автоматически освобождается при выходе
из функции, вызвавшей alloca.

Возвращаемое значение.

Процедура alloca возвращает указатель char на захваченное
пространство.
В памяти, на которую указывает возвращаемое значение, га-
рантировано выравнивание для хранения любого типа объекта. Чтобы
получить указатель на тип, отличный от char, используется преоб-
разователь типа возвращаемого значения. Возвращается значение
NULL, если пространство не было захвачено.
См.также calloc, malloc, realloc.

Предупреждение. Значение указателя, возвращаемого процеду-
рой alloca, не может быть аргументом для free. Так как alloca об-
рабатывает стек, она должна использоваться только в простых опе-
раторах выделения и не должна использоваться в выражениях-аргу-
ментах функций.

Пример:

#include
int *intarray;

/* захватывает память в стеке для 10 целых */

intarray=(int*)alloca(10*sizeof(int));


Информация о статье "Описание функций C (Си) / C++ - alloca"

Автор DeVoid | Сайт http://devoid.com.ua/ | Добавлена 16 Октября 2007 | Просмотрели 1967 раз

  • Digg it!
  • Delicious
  • +МоёМесто.ru
  • Добавить страницу к Мистеру Вонгу
  • Добавить страницу к Мистеру Вонгу

Комментарии КОММЕНТАРИИ

Комментариев еще нет.

Зарегистрируйтесь или выполните Вход для того чтобы оставлять комментарии