問fortran關於全域性變數的問題可以追分哦

2021-08-04 23:32:46 字數 733 閱讀 1341

1樓:匿名使用者

題主好,現在是20170805的凌晨,搜尋到這個題目,想補充一下,完善這個問題。

其實對於你標號1舉出的兩種彈出錯誤,我在中科大的fortran教材上看到一句話,很簡短但是能夠非常扼要的指出錯誤點。

這句話是:當common語句指定了陣列的秩和大小後,只能定義陣列的型別而不能再次重複給定維界。

所以對於你的錯誤1,是觸犯了再commony已經宣告了陣列的秩和大小後,變數型別定義中又再次宣告大小的錯誤。而錯誤2則是因為b陣列只宣告了公共區、秩、大小,但是沒有宣告型別。這就是報錯的原因。

然後是大的問題2,關於common和module的用法區別。

common是開闢公共記憶體,實現不同過程中的不同變數訪問同乙個記憶體位置。

module可以實現的是直接定義了全域性變數,在不同函式中使用同乙個變數名訪問同乙個記憶體位置。

如果想用module實現common的功能,則可以使用module中的變數改名功能。

題主應該都明白了,主要希望能為後來人做點貢獻。

2樓:

可以嘗試這樣:

common a,b(10,10)

real a,b

我不知道這裡你明白不明白::的作用,它是用在賦初值或同時宣告各種屬性時用的,這裡沒有這些,可以不用它

3樓:匿名使用者

real::a,b(10,10)

common a,b

靜態全域性變數和全域性變數有什麼區別

首先兩個變數都是定義在類中的,靜態的全域性變數就是static宣告的,類可以不用new 就可以呼叫了 而且全域性變數一般是指成員變數,也叫類的屬性變數,欄位等,是需要把類new出來才能呼叫的 public class test 全域性變數 外部變數 的說明之前再冠以static 就構成了靜態的全域性...

關於c 全域性變數和區域性變數問題

我說得很清楚啊 動態記憶體的那塊記憶體它是在你申請後就一直存在,永遠存在 直到你釋放後或關機了就不存在了.對使用動態記憶體 乙個程式使用的記憶體一般分為4個部分 你說的函式外就失效的那部分區域叫棧區,一般函式的區域性變數存在裡面,這些變數在函式呼叫結束後就不存在了 而所謂的 動態記憶體是在 堆區,這...

c全域性變數的使用方法,C 全域性變數的使用方法?

全域性變數定義 在類裡面類方法外 可以利用類的靜態變數 靜態建構函式 靜態方法來實現如private static intp 0 靜態變數 程式中的任何地方,都可以設定和引用它public static intgetnum int number 在c 裡沒有全域性變數的概念!但是,如果你想定義某個變...