$1.99 Domains* at GoDaddy.com

C Programlama Arttırma (Increment) ve azaltma (decrement)

c_programlama-167Daha önceki derslerimizde, aritmetik işlemlerden bahsetmiştik. Bunların dışında yapabileceğimiz başka şeylerde bulunmaktadır. Bunlardan biri de, arttırma ve azaltma işlemleridir.

EÄŸer i adında bir deÄŸiÅŸkenin deÄŸerini 1 arttırmak isterseniz, i = i + 1 olarak yazarsınız. Veya 1 azaltmak isterseniz, benzer ÅŸekilde i = i – 1 de yazabilirsiniz. Arttırma ve azaltma iÅŸlemleri bu olayı daha basit bir forma sokmaktadır. i = i + 1 yazmak yerine i++ veya i = i – 1 yazmak yerine i– yazabilirsiniz.

Arttırma ve azaltma işlemleri temelde iki çeşittir. Birinci yöntemde yukarda yazdığımız gibi, arttırma/azaltma sonradan yapılır. İkinci yöntemdeyse arttırma/azaltma ilk başta yapılır. Aşağıdaki örneklere bakalım.

/*
Bu programda, arttırma ve azaltma
işlemleri önce yapılacaktır.
*/
#include<stdio.h>
int main( void )
{
	int i = 10, j = 60;
	printf("i = %d ve j = %d\n", ++i, --j);
	return 0;
}

Yukardaki programı yazar ve çalıştırısanız elde edeceğiniz çıktı şu şekilde görünecektir:

i = 11 ve j = 59

Çünkü arttırma ve azaltma iÅŸlemleri ekrana bastırmadan önce yapılmış ve i ile j’nin deÄŸerleri deÄŸiÅŸtirilmiÅŸtir. Åžimdi programı deÄŸiÅŸtirip şöyle yazalım:

/*
Bu programda, arttırma ve azaltma
işlemleri sonra yapılacaktır.
*/
#include<stdio.h>
int main( void )
{
	int i = 10, j = 60;
	printf("i = %d ve j = %d\n", i++, j--);
	return 0;
}

Bu sefer program çıktısı şöyle olacaktır:

i = 10 ve j = 60

FarkettiÄŸiniz üzere hiçbir deÄŸiÅŸiklik yapılmamış gibi duruyor. Aslında deÄŸiÅŸiklik yapıldı ve program sonlanmadan önce i 10 olurken, j’de 59 oldu. Ama arttırma ve azaltma iÅŸlemleri printf komutu çalıştırıldıktan sonra yapıldığı için, biz bir deÄŸiÅŸiklik göremedik.

Kısacası önce arttırma (pre-increment) veya önce azaltma (pre-decrement) kullandığınızda, ilgili komut satırında çalışacak ilk şey bu komutlar olur. Ancak sonra arttırma (post increment) veya sonra azaltma kullanırsanız, o zaman bu işlemlerin etkileri ilgili komut satırından sonra geçerli olacaktır. Aşağıdaki özel tabloya bakabilirsiniz:

Form Tip İsim Açıklama
i++ postfix post-increment İşlem sonrası arttırma
++i prefix pre-increment İşlem öncesi arttırma
i– postfix post-decrement İşlem sonrası azaltma
–i prefix pre-decrement İşlem öncesi azaltma

Kategoriler: C Programlama, Yazılım

Tags: , , ,

Yorumlar

Yorum Yok

Yorumunuzu Ekleyin

Yorum eklemek için giris yapmalısınız.