自增與自減運算符

C語言自學之自增與自減運算符

#include <stdio.h>

int main()
{
    int a=99;
    printf("%d\n",a++);//先取值在運算,遂輸出爲a的賦予值99,在輸出後表達式開始運算這時a爲100;
    printf("%d\n",++a);//先運算在取值,遂輸出爲上一行執行後a值(100)+1後取值,輸出結果101;
    printf("%d\n",--a);//先運算在取值,遂輸出爲上一行之後a值(101)-1後取值,輸出結果爲100;
    printf("%d\n",a--);//先取值在運算,遂輸出爲上一行a的值(100),在輸出後表達式開始運算,這時a的值爲99;
    printf("%d\n",a+1);//注意:這裏並不改變a的值,遂輸出結果爲上一行a的值(99)+1,在輸出後a的值因不改變遂爲99;
    printf("%d\n",a);//上一行執行後a值爲99,遂這裏a輸出值爲99;
    return 0;
}
注意:無論是a++還是++a都等同於a=a+1,在表達式執行完畢後a的值都自增了1,
         無論是a--還是--a都等同於a=a-1,在表達式執行完畢後a的值都自減少1
         C程序爲邏輯逐行運算,遂值在逐行運算後 不斷在變化,只是區別與輸出與否。
自增自減運算
後綴自增 x = i++; x = i;i=i+1; 先取值,再自增(自減)
後綴自減 x=i--; x =i;i=i-1;
前綴自增 x = ++i; i=i+1;x=i; 先自增(自減)再取值
前綴自減 x = --i; i=i-1;x = i;
注意:
1. 只能對變量做++和--運算,不能對變量和表達式做++和--運算
 5++;  //ERROR
 (3+x)++;  //ERRO
2. 建議儘量使用前綴自增(自減),以避免錯誤。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章