Daha önce CPP 004 – Mod & Increment dersinde increment durumundan bahsetmiştik ama ufak bir nüansı atlamıştık. Şimdi o nüansa gelelim.
++ ve — değişkenin başına veya sonuna geldiğinde farklı şekillerde çalışıyor. Aslında yaptığı işlem aynı ama ufak bir fark var.
Postfix
Öncelikle değişken kullanılır. Sonra artırma işlemi yapılır:
int a = 5;
cout << "a : " << a << endl; // 5
cout << "a++ : " << a++ << endl; // 5
cout << "a : " << a << endl; // 6
a değişkenimizin değeri 5. a++ yapıldığında öncelikle değişkeni bulunduğu yerde kullanıp sonra değerini artırıyor. Bu sebepten 5. satırdan 5 çıktısını alıyoruz. 6. satırda ise şuanki değeri olan 6 yı görüyoruz
Prefix
Peki ++ operatörü başa gelseydi ne olacaktı?
Öncelikle değişkenin değeri bir artacaktı. Sonra kullanılacaktı. Önceki örneğe devam edelim:
#include <iostream>
using namespace std;
int main() {
int a = 5;
cout << "a : " << a << endl; // 5
cout << "a++ : " << a++ << endl; // 5
cout << "a : " << a << endl; // 6
cout << "++a : " << ++a << endl; // 7
cout << "a : " << a << endl; // 7
}
13. satırda değeri 6 olan a değişkeni prefix increment operatörüyle 1 artırılmıştır. Sonra yine aynı satırda cout ile arıtılmış olan değer yazıdırılmıştır.
— operatörünün başa veya sona gelmesi yine aynı mantıkla çalışır
Leave a Reply