Spec-Zone.ru › GNU Fortran 12

8.57 C_SIZEOF — Размер в байтах выражения

Описание:

C_SIZEOF(X) вычисляет количество байтов памяти, занимаемых выражением X.

Стандарт:

Fortran 2008

Класс:

Функция запроса модуля ISO_C_BINDING

Синтаксис:

N = C_SIZEOF(X)

Аргументы:
X Аргумент должен быть совместимым с данными объектом.
Возвращаемое значение:

Возвращаемое значение имеет целочисленный тип и системно-зависимый вид C_SIZE_T (из модуля ISO_C_BINDING). Его значение равно количеству байтов, занимаемых аргументом. Если у аргумента есть атрибут POINTER, возвращается количество байтов области памяти, на которую он указывает. Если аргумент является производным типом с компонентами POINTER или ALLOCATABLE, возвращаемое значение не учитывает размеры данных, на которые указывают эти компоненты.

Пример:
use iso_c_binding
integer(c_int) :: i
real(c_float) :: r, s(5)
print *, (c_sizeof(s)/c_sizeof(r) == 5)
end

Пример выведет T, если не используются платформы, где переменные по умолчанию REAL необычно дополняются.

См. также:

SIZEOF, STORAGE_SIZE

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

Spec-Zone.ru

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