在使用的時候,大家都了解的是++i是先加再用,而i++是先用再加。但是二者其實有很大區別的。
如下**:
/**
* */
package chapter2;
/** * @author vayne
* */
public class proandpost
/*** @param i
*/private static void function3(int i)
/*** @param i
*/private static void function2(int i)
/*** @param i
*/private static void function1(int i)
}
執行結果如下:
i=++i的結果是:16
j=i++的結果是:15
i=i++的結果是:15
對於後置++,即i++,其實其實際應用過程是:
int temp=i;
i+=1;
f(temp);
其中f指的是對temp的實際應用。因此,在i++使用的過程中,引入了第三個變數temp,因此,對於i=i++,是將temp的值賦給了i,所以i=i++的結果,i為15。
而對於前置++,即++i,直接將i+=1,然後直接應用i。
從偽指令角度來說,前置++是將變數+1後應用,而後置++是先將變數的值壓入棧中,然後將變數+1,最後應用的是棧中的值。
差之 10px ,謬以千里
在解決了解析度對bosnma的影響後,最近在研究火狐 chrome等瀏覽器顯示異常的問題。於是開始愜意的google。其實解決瀏覽器之間的相容性問題是web開發公認的棘手問題之一,尤其是在比較大型和正規的企業,他們的 要盡可能的滿足更多的執行環境以爭取最大的客戶流量。在解析度上,客戶的設定除了主流的...
C 高效程式設計話題集1(每期10話題)
近來在小組 c 快速成長團隊 討論了若干話題,有些感覺不錯,特總結與大家分享。當然,所謂話題,重點在於進行討論,是否是最佳實踐也屬於大家的個人之見。以下觀點若有差錯,盡情蹂躪。1 string str1 str1 9 和string str2 str2 9.tostring 哪個效率高 可以知道 s...
C 高效程式設計話題集1(每期10話題)
近來在小組 c 快速成長團隊 討論了若干話題,有些感覺不錯,特總結與大家分享。當然,所謂話題,重點在於進行討論,是否是最佳實踐也屬於大家的個人之見。以下觀點若有差錯,盡情蹂躪。1 string str1 str1 9 和string str2 str2 9.tostring 哪個效率高 可以知道 s...