說我有一堆的變量a,b,C可以FORTRAN告訴你多少字節的一系列變量使用
integer*4 a
integer*8 b
real*8 c
有沒有辦法確定這些變量是多少字節使用而不計算它手動。我有一個很長的變量列表,我需要知道寫出目的的大小。
說我有一堆的變量a,b,C可以FORTRAN告訴你多少字節的一系列變量使用
integer*4 a
integer*8 b
real*8 c
有沒有辦法確定這些變量是多少字節使用而不計算它手動。我有一個很長的變量列表,我需要知道寫出目的的大小。
在Fortran 2008中,內在函數storage_size
是要走的路。另外,很有用。
對於Fortran 95中的整數,您可以使用bit_size
。
如果您需要聲明具有特定存儲大小的變量,請使用模塊iso_fortran_env
中的種類常量,如real32
。
當然,如果你使用過時的和非標準的聲明作爲integer*4
或real*8
你總是知道字節數。它是星號後面的數字(定義爲可以存儲在數字類型中的默認字符數)。
如果您需要的變量的一些集合的大小,你可以做一個派生類型使用相同的組件:
type,sequence :: dummy_t
integer*4 a
integer*8 b
real*8 c
end type
type(dummy_t) :: dummy
,並使用storage_size(dummy)
或使用內在構造函數。