| 10 | 1/1 | 返回列表 |
| 查看: 3263 | 回復(fù): 9 | ||
鴻影驚天下金蟲 (小有名氣)
|
[求助]
主程序中未分配的可變數(shù)組,如何在子程序中調(diào)用?
|
|
請前輩們幫忙,自己編的一段程序: Program test_main implicit none integer NP,ele_n,NE,NNE,npt,num integer,pointer :: ele_concentrate( : ),ele_c( : ) double precision,pointer::vcl( : , : ) interface subroutine new_node(NP,ele_n,NE,NNE,ele_concentrate,ele_c,vcl,npt,num) implicit none integer NP,ele_n,NE,NNE,npt,num integer,allocatable :: ele_concentrate(NE),ele_c(NNE) double precision,allocatable :: vcl(2,npt) end subroutine new_node subroutine zhaobian_gj01(NP,ele_n,NE,NNE,ele_concentrate,ele_c,vcl,npt,num) implicit none integer NP,ele_n,NE,NNE,npt,num integer :: ele_concentrate(NE),ele_c(NNE) double precision ::vcl(2,npt) end subroutine zhaobian_gj01 end interface call zhaobian_gj01(NP,ele_n,NE,NNE,ele_concentrate,ele_c,vcl,npt,num) call new_node(NP,ele_n,NE,NNE,ele_concentrate,ele_c,vcl,npt,num) end 后面的zhaobian_gj01, new_node是子程序經(jīng)調(diào)試沒有錯(cuò)誤,但是主程序在調(diào)試過程中總報(bào)錯(cuò)。 ![]() 一個(gè)錯(cuò)誤是可變數(shù)組ele_concentrate,ele_c,vcl:ALLOCATABLE or POINTER attribute dictates a deferred-shape-array 另外一個(gè)錯(cuò)誤是An allocatable dummy argument may only be argument associated with an allocatable actual argument. 同樣也是可變數(shù)組出錯(cuò)。 兩個(gè)錯(cuò)誤都出在interface塊。 求有經(jīng)驗(yàn)的前輩幫忙指點(diǎn)一二!謝謝 [ Last edited by 鴻影驚天下 on 2014-3-4 at 15:06 ] |

金蟲 (小有名氣)
|
對不起我不是很明白,你的意思是vcl這個(gè)數(shù)組定義成(2,: )是已經(jīng)給定了大小嗎?我把interface塊改成這樣: interface subroutine new_node(NP,ele_n,NE,NNE,ele_concentrate,ele_c,vcl,npt,num) implicit none integer NP,ele_n,NE,NNE,npt,num integer,allocatable :: ele_concentrate(NE),ele_c(NNE) double precision :: vcl(2,npt) end subroutine new_node end interface interface subroutine zhaobian_gj01(NP,ele_n,NE,NNE,ele_concentrate,ele_c,vcl,npt,num) implicit none integer NP,ele_n,NE,NNE,npt,num integer,allocatable :: ele_concentrate(NE),ele_c(NNE) double precision ::vcl(2,npt) end subroutine zhaobian_gj01 end interface 之后,vcl數(shù)組不再提示錯(cuò)誤,但是其他兩個(gè)數(shù)組還是會報(bào)原來的錯(cuò)誤。但是如果把interface里申請可變數(shù)組的allocatable都去掉,錯(cuò)誤提示就會變成:error #8000: There is a conflict between local interface block and external interface block. [ELE_CONCENTRATE] 位置是在interface里zhaobian_gj01(NP,ele_n,NE,NNE,ele_concentrate,ele_c,vcl,npt,num)這一句。 這是為什么呢? |

金蟲 (小有名氣)
|
謝謝你!我明白了,那就是說在interface塊中所有的動態(tài)數(shù)組只要寫成(:,: )這樣的形式就可以了對嗎?我把這一段改過來之后,錯(cuò)誤提示變成了調(diào)用兩個(gè)子程序時(shí)動態(tài)數(shù)組出錯(cuò),錯(cuò)誤的信息是 error #7976: An allocatable dummy argument may only be argument associated with an allocatable actual argument. [ELE_CONCENTRATE] 之后應(yīng)該怎么修改呢? |

金蟲 (小有名氣)
|
謝謝!這一段已經(jīng)調(diào)通了,但是新的問題又產(chǎn)生了 。我之前已經(jīng)調(diào)通的子程序段new_node在整個(gè)程序調(diào)用時(shí)出現(xiàn)斷點(diǎn),我檢查了以后發(fā)現(xiàn)是zhaobian_gj01這個(gè)子程序里生成的,ele_concentrate,ele_c這兩個(gè)數(shù)組的值沒有正確傳入new_node里。zhaobian_gj01里定義的interface塊是這樣的: interface subroutine new_node(NP,ele_n,NE,NNE,ele_concentrate,ele_c,vcl,npt,num) implicit none integer NP,ele_n,NE,NNE,npt,num integer ele_concentrate(NE),ele_c(NNE) double precision vcl(2,npt) end subroutine new_node end interface 是這里有什么問題嗎? |

| 10 | 1/1 | 返回列表 |
| 最具人氣熱帖推薦 [查看全部] | 作者 | 回/看 | 最后發(fā)表 | |
|---|---|---|---|---|
|
[考研] 085600材料與化工調(diào)劑 324分 +10 | llllkkkhh 2026-03-18 | 10/500 |
|
|---|---|---|---|---|
|
[考研] 招收調(diào)劑碩士 +3 | lidianxing 2026-03-19 | 7/350 |
|
|
[考研] 材料考研調(diào)劑 +3 | xwt。 2026-03-19 | 3/150 |
|
|
[考研] 一志愿吉林大學(xué)材料學(xué)碩321求調(diào)劑 +6 | Ymlll 2026-03-18 | 9/450 |
|
|
[考研] 0817調(diào)劑 +3 | 沒有答案_ 2026-03-14 | 3/150 |
|
|
[考研] 材料專碩英一數(shù)二306 +5 | z1z2z3879 2026-03-18 | 5/250 |
|
|
[考研] 化學(xué)工程321分求調(diào)劑 +15 | 大米飯! 2026-03-15 | 18/900 |
|
|
[考研] 311求調(diào)劑 +6 | 26研0 2026-03-15 | 6/300 |
|
|
[考研] 材料專碩306英一數(shù)二 +10 | z1z2z3879 2026-03-16 | 13/650 |
|
|
[考研] 0703化學(xué)調(diào)劑 ,六級已過,有科研經(jīng)歷 +10 | 曦熙兮 2026-03-15 | 10/500 |
|
|
[考研] 0703化學(xué)調(diào)劑 +3 | 妮妮ninicgb 2026-03-17 | 3/150 |
|
|
[考研] 278求調(diào)劑 +5 | 煙火先于春 2026-03-17 | 5/250 |
|
|
[考研] 334求調(diào)劑 +3 | 志存高遠(yuǎn)意在機(jī)?/a> 2026-03-16 | 3/150 |
|
|
[考博] 26博士申請 +3 | 1042136743 2026-03-17 | 3/150 |
|
|
[考研] 277調(diào)劑 +5 | 自由煎餅果子 2026-03-16 | 6/300 |
|
|
[考研] 一志愿蘇州大學(xué)材料工程(085601)專碩有科研經(jīng)歷三項(xiàng)國獎兩個(gè)實(shí)用型專利一項(xiàng)省級立項(xiàng) +6 | 大火山小火山 2026-03-16 | 8/400 |
|
|
[考研] 一志愿南京大學(xué),080500材料科學(xué)與工程,調(diào)劑 +4 | Jy? 2026-03-16 | 4/200 |
|
|
[論文投稿] 有沒有大佬發(fā)小論文能帶我個(gè)二作 +3 | 增銳漏人 2026-03-17 | 4/200 |
|
|
[考研] 297求調(diào)劑 +4 | 學(xué)海漂泊 2026-03-13 | 4/200 |
|
|
[考研] 招收0805(材料)調(diào)劑 +3 | 18595523086 2026-03-13 | 3/150 |
|