Toán tử tăng (++) tăng giá trị 1 đơn vị, giảm (--) giảm 1 đơn vị.
Cú pháp
++ten_bien; // Tiền tố tăng --ten_bien; // Tiền tố giảm
Pre-increment (++bien)
Tăng giá trị trước khi dùng giá trị trong biểu thức.
Ví dụ
#include <stdio.h>
int main() {
int i = 5;
printf("Gia tri ban dau: %d\n", i);
while (++i < 10) // Tăng trước, so sánh sau
printf("%d\t", i);
return 0;
}
Gia tri ban dau: 5 6 7 8 9
Pre-decrement (--bien)
Giảm giá trị trước khi dùng giá trị trong biểu thức.
Ví dụ
#include <stdio.h>
int main() {
int i = 10;
printf("Gia tri ban dau: %d\n", i);
while (--i > 5) // Giảm trước, so sánh sau
printf("%d\t", i);
return 0;
}
Gia tri ban dau: 10 9 8 7 6
So sánh với hậu tố (postfix)
| Biểu thức | Giá trị biểu thức | Giá trị biến sau |
|---|---|---|
i++ | Giá trị cũ | i + 1 |
++i | Giá trị mới | i + 1 |
i-- | Giá trị cũ | i - 1 |
--i | Giá trị mới | i - 1 |
Khi dùng độc lập (không gán), i++ và ++i cho cùng kết quả cuối. Khác biệt chỉ hiện rõ khi gán hoặc trong biểu thức lớn.