Spec-Zone.ru › GNU Fortran 11

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

Описание:

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

Стандарт:

Fortran 2008

Класс:

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

Синтаксис:

N = C_SIZEOF(X)

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

Значение возврата имеет тип integer и системно-зависимый вид 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-11.1.0/gfortran/C_005fSIZEOF.html

Spec-Zone.ru

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