Trong C, toán tử ++ và -- được gọi là toán tử tăng và giảm. Chúng là các toán tử một ngôi chỉ cần một toán hạng. Do đó toán tử ++ cũng như -- có thể xuất hiện trước hoặc sau toán hạng với tác dụng tương tự.
Điều đó có nghĩa là cả i++ và ++i sẽ tương đương nhau.
i=5;
i++;
printf("%d",i);
Và
i=5
++i;
printf("%d",i);
Cả hai cho kết quả i=6
Tuy nhiên, khi được sử dụng cùng với toán tử gán, thì thứ tự ưu tiên của toán tử sẽ xuất hiện.
i=5;
j=i++;
Trong trường hợp này, ưu tiên của = cao hơn hậu tố ++. Vì vậy, giá trị của i được gán cho j trước khi tăng i.
Kết quả j=5, i=6.
Nhưng nếu:
i=5;
j=++i;
Trong trường hợp này, tiền tố ++ được ưu tiên hơn toán tử =. Vì vậy, i sẽ tăng trước và giá trị tăng được gán cho j.
Kết quả i=6, j=6.
» Tin mới nhất:
» Các tin khác: