亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Fortran:整數*4對整數(4)對整數(類=4)

Fortran:整數*4對整數(4)對整數(類=4)

Fortran:整數*4對整數(4)對整數(類=4)我正在努力學習Fortran,我看到很多不同的定義正在被傳遞,我想知道他們是否試圖完成同樣的事情。下面的區別是什么?integer*4integer(4)integer(kind=4)
查看完整描述

3 回答

?
手掌心

TA貢獻1942條經驗 獲得超3個贊

在Fortran>=90中,最好的方法是使用內部函數來指定所需的精度-這既保證了可移植性,也保證了所需的精度。例如,獲取整數imy_int這將支持至少8個小數位數,您可以使用:

integer, parameter :: RegInt_K = selected_int_kind (8)
integer (kind=RegInt_K) :: i, my_int

已定義RegInt_K(或您選擇的任何名稱)作為parameter,您可以在整個代碼中使用它作為符號。這也使得更改精度變得容易。

請求8或9個小數位數通常會得到一個4字節的整數.

integer*4是一個常見的擴展,可以追溯到舊的FORTRAN來指定一個4字節的整數。雖然,這個語法不是而且從來都不是標準的Fortran。

integer (4)integer (RegInt_K)是縮寫integer (kind=4)integer (kind=RegInt_K)integer (4)integer*4而且是不可移植的-語言標準沒有指定種類的數值。大多數編譯器使用kind=4用于4字節整數-用于這些編譯器integer*4integer(4)將提供相同的整數類型-但也有例外,因此integer(4)是不可攜帶的,最好避免。

REALS的方法也是類似的。

更新:如果您不想按照所需的精度指定數字類型,而是通過它們將要使用的存儲來指定數字類型,則Fortran 2008提供了一個方法。reals和整數可以由后面的存儲位數指定。use使.ISO_FORTRAN_ENV模塊,例如,對于一個4字節(32位)整數:

use ISO_FORTRAN_ENV
integer (int32) :: MyInt

gfortran手冊在“內部模塊”下有文檔。


查看完整回答
反對 回復 2019-06-26
  • 3 回答
  • 0 關注
  • 1669 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號