[問題] 自訂型態type+allocate

看板Fortran作者 (iohan)時間10年前 (2014/09/28 10:47), 編輯推噓2(204)
留言6則, 2人參與, 最新討論串1/1
原始宣告如下 type :: abc integer :: a real :: b read :: c end type abc type(abc) :: GG 假設現在我需要3組不同的變數GG 第一組GG的a,b,c各要2,3,4個數字 第二組GG的a,b,c各要3,4,5個數字 第三組GG的a,b,c各要7,8,9個數字 請問我allocate的格式該怎麼打才是正確的? 或者...type根本不能allocate ? 感謝賜教 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.254.225.112 ※ 文章網址: http://www.ptt.cc/bbs/Fortran/M.1411872424.A.E23.html

09/28 12:00, , 1F
95以前的type裡面不能放allocatable array,
09/28 12:00, 1F

09/28 12:00, , 2F
需要動態配置的話請改用pointer。
09/28 12:00, 2F

09/30 12:11, , 3F
type(abc),dimension(:),allocatable :: GG
09/30 12:11, 3F

09/30 12:12, , 4F
allocate(GG(3))
09/30 12:12, 4F

09/30 12:14, , 5F
GG=(/abc(1,2.,3.),abc(4,5.,6.),abc(7,8.,9.)/)
09/30 12:14, 5F

09/30 12:18, , 6F
write(*,*) GG(1)%a, GG(1)%b, GG(1)%c
09/30 12:18, 6F
文章代碼(AID): #1K9tQeuZ (Fortran)
文章代碼(AID): #1K9tQeuZ (Fortran)