C語言 自增自減運算的區別詳解及實例。本站提示廣大學習愛好者:(C語言 自增自減運算的區別詳解及實例)文章只能為提供參考,不一定能成為您想要的結果。以下是C語言 自增自減運算的區別詳解及實例正文
投稿:lqh
這篇文章主要介紹了C語言中的++a和a++的區別詳解及實例的相關資料,需要的朋友可以參考下自增自減
++a和a++的區別
雖然++a和a++等價的結果一樣,但是運算過程不同,a++ 是先使用a的值,然後再對a做加1處理,++a是先對a作加1處理,然後再使用a的值。
例子
#include <stdio.h> int main() { //int m = 10, n1, n2; //n1 = m++;先將m的值賦給n1,然後m再做自增運算,所以此時,n1=10,m=11; //n2 = ++m ;先將m做自增運算,然後在將運算後的m值賦給n2,所以此時,n2=11,m=11; int a = 10,b =10, c, d; c = (a++) + (++a); //由上例n1=m++,n2=++m,m++=11可得出c=10+12;分析:前面括號所得值為10,而前面括號中的a經過自增運算後a的值為11,然後賦值給後面括號中的a,後面括號中的a經過自增運算後a的值為12,後面括號最後賦值為12; d = (++b) + (b++); //由上例n1=m++,n2=++m,++m=11可得出d=11+11;分析:前面括號所得值為11,而前面括號中的a經過自增運算後b的值為11,然後賦值給後面括號中的b,後面括號中的b先將值賦給後面括號,所以後面括號的值為11; printf("c=%d\nd=%d\n",c,d); return 0; }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!