Spec-Zone.ru › GNU Fortran 9

9.185 MALLOC — Выделить динамическую память

Описание:

MALLOC(SIZE) выделяет SIZE байтов динамической памяти и возвращает адрес выделенной памяти. MALLOC интринсика — расширение, предназначенное для использования с указателями Cray, и предоставляется в GNU Fortran для компиляции устаревшего кода. Для нового кода, использующего указатели Fortran 95, используется ALLOCATE.

Стандарт:

Расширение GNU

Класс:

Функция

Синтаксис:

PTR = MALLOC(SIZE)

Аргументы:
SIZE Тип должен быть INTEGER.
Значение результата:

Значение результата имеет тип INTEGER(K), с K, таким что переменные типа INTEGER(K) имеют тот же размер, что и указатели C (sizeof(void *)).

Пример:

Следующий пример демонстрирует использование MALLOC и FREE с указателями Cray.

program test_malloc
  implicit none
  integer i
  real*8 x(*), z
  pointer(ptr_x,x)

  ptr_x = malloc(20*8)
  do i = 1, 20
    x(i) = sqrt(1.0d0 / i)
  end do
  z = 0
  do i = 1, 20
    z = z + x(i)
    print *, z
  end do
  call free(ptr_x)
end program test_malloc
См. также:

FREE

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-9.3.0/gfortran/MALLOC.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API