2014-03-06 147 views
0

任何機構都可以向我解釋爲什麼要在第二行識別「+」作爲一元運算符?算術運算符後面的一元運算符

   b=(x_temp(i+1,j)-x_temp(i-1,j))*(x_temp(i,j+1)-x_temp(i,j-1))/4 
>    +(y_temp(i+1,j)-y_temp(i-1,j)) 
>    *(y_temp(i,j+1)-y_temp(i,j-1))/4 

回答

2

假設你的問題是「爲什麼這個代碼與一元+運營商那裏進行編譯,這是不是實際上是一個一元運算符,它是一個二進制一個作爲續行的第一個字符。

>的字符幾乎肯定在第6欄,以表明最後兩行是第一的延續

因此整個表達式實際上是:

b=(x_temp(i+1,j)-x_temp(i-1,j))*(x_temp(i,j+1)-x_temp(i,j-1))/4+(y_temp(i+1,j)-y_temp(i-1,j))*(y_temp(i,j+1)-y_temp(i,j-1))/4 

如果你的問題是更多的「爲什麼我的編譯器無法識別續行?」,這可能是因爲它希望你跟着自由格式的規則,在該行的末尾使用&繼續和/或&作爲繼續線中的第一個非空白字符。

這是更新的風格,Fortran77遵循舊的風格。您可能需要找出哪些編譯器選項會強制編譯器識別舊版本。