在 c 語言中 ++i 和 i++ 的區別是什麼?
在 C 中,++ 和 -- 運算子稱為 增量和減量運算子。它們是一元運算子,僅需要一個運算元。因此 ++ 和 -- 運算子都可以在運算元之前或之後出現,並具有相同的效果。
這意味著 i++ 和 ++i 將是等效的。
i=5;
i++;
printf("%d",i);並且
i=5
++i;
printf("%d",i);兩者都會使 i=6。
但是,當增量表達式與賦值運算子一起使用時,運算子優先順序將發揮作用。
i=5; j=i++;
在這種情況下,= 的優先順序高於字尾 ++。因此,在 i 增量之前,i 的值將分配給 i。在這裡 j 變成 5,i 變成 6。
i=5; j=++i;
在這種情況下,字首 ++ 的優先順序高於 = 運算子。因此,i 將首先增量,並將增量值分配給 j。在這裡,i 和 j 都變成 6。
#include <stdio.h> int main() { int i=5,j; j=i++; printf ("
after postfix increment i=%d j=%d", i,j); i=5; j=++i; printf ("
after prefix increment i=%d j=%d",i,j); return 0; }
輸出為
after postfix increment i=6 j=5 after prefix increment i=6 j=6
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP