MARMARA BÖTE
  C Dersleri-2
 

<<1          3>>

FONKSİYONLAR

 

C'de alt programlara fonksiyon denir. Bir fonksiyon iki farklı amaçla  kullanılabilir :

1.      Fonksiyon, icrası  süresince belli amaçları gerçekleştirir. (Belli işlemleri yapar)

2.      Fonksiyon icrası sonunda üreteceği bir değeri kendisini çağıran fonksiyona gönderebilir.

Fonksiyonların Tanımlanması

Kendi yazdığımız fonksiyonlar için tanımlama (definition) terimini kullanıyoruz. C'de fonksiyon tanımlama işleminin genel biçimi şöyledir:

 

[Geri dönüş değerinin türü] <fonksiyon ismi> ([parametreler])

{

...

...

}

 

Geri dönüş değerine ihtiyaç duyulmadığı durumlarda da geri dönüş değerinin türü yerine void anahtar sözcüğü yerleştirilir. Örneğin:

 

void sample(void)

{

...

}

 

Fonksiyon Başlığının Yazılması

 

int sample (double x, y)                               /* hatalı  */

{

            ...

}

 

bildirimi hatalıdır. Doğru tanımlamanın aşağıdaki şekilde olması gerekir:

 

int sample (double x, double y)

{

            ...

}

 

Fonksiyon Prototipi

 

#include<stdio.h>

#include<conio.h>

İnt alan(int x,int y);

Main()

{

………

…..

..getch();

Return 0;

}

İnt alan(int x,int y)

{

….

}

 

 

ÖRNEKLER

 

1-) #include<stdio.h>

      #include<conio.h>

void giris();

Main()

{

    giris();

     getch();

     return 0;

}

Void giris()

{

Printf(“Merhaba”);

}

 

2-)  #include<stdio.h>

      #include<conio.h>

 int topla(int a,int b);

main()

{

int sayi1,sayi2;

printf(“İki Sayı Giriniz”);

scanf(“%d%d”,&sayi1,&sayi2);

printf(“Toplam %d dir”,topla(sayi1,sayi2));

getch();

return 0;

}

İnt topla(int a,int b)

{

return a+b;

}

 

Faaliyet Alanı ve Ömür

 

1-) Blok Faaliyet Alanı

2-) Dosya Faaliyet Alanı

 

int a;                          Dosya Faaliyet Alanı  ( a değişkeni )

main()

{

int b;                         Blok Faaliyet Alanı  ( b değişkeni )

….

….

}

 

OPERATÖRLER

 

x + y

 

yè operant

+è operand

 

Operand

 

Operatörlerin değer üzerinde işlem yaptıkları nesne veya sabitlere denir. C'de operatörleri aldıkları operand sayısına  göre 3 gruba ayırabiliriz.

 

1.      Tek Operand Alan Operatörler (unary operators)

Örneğin ++ ve -- operatörleri unary operatörlerdir. (C dilinde unary operatörler operatöröncelik tablosunun 2. seviyesinde bulunurlar.)

 

2.      İki Operand Alan Operatörler. (binary operators)

Aritmetik işlem operatörü olan + ve / operatörlerini örnek olarak verebiliriz.

 

3.      Üç Operand Alan Operatör (ternary operator)

Çoğul kullanmıyoruz çünkü C'de 3 opererand olan tek bir operatör vardır. (koşul operatörü - conditional operator)

 

Operatörlerin Yan Etkileri

 

C dilinde operatörlerin ana işlevleri, bir değer üretmeleridir. Ancak bazı operatörler operandı olan nesnelerin değerlerini değiştirirler. Yani bu nesnelerin bellekteki yerlerine yeni bir değer yazılmasına neden olurlar. Bir operatörün kendilerine operand olan nesnenin değerlerini değiştirmesine operatörün yan etkisi diyeceğiz. Yan etki, bellekte yapılan eğer değişikliği olarak tanımlanmaktadır. Örneğin atama operatörünün, ++ ve -- operatörlerinin yan etkileri söz konusudur.

 

Operatörler Üzerindeki Kısıtlamalar

 

Kısıtlama operatörün operand ya da operandlarının türleriyle de ilgili olabilir. Örneğin % operatörünün operandlarının tamsayı türlerinden birine ait olması gerekmektedir. % operatörünün operandları gerçek sayı türlerinden birine ait olamaz. Operandın gerçek sayı türlerinden birinden olması durumunda derleme zamanında hata oluşacaktır.

 

Artırma ++ ve Eksiltme -- Operatörleri

 

Aşağıdaki programı inceleyelim:

 

int main()

{

int a, b;

            a = 10;

b = ++a;

printf(“a  = %d b = %dn”, a, b);

a = 10;

b = a++;

printf(“a  = %d b = %dn”, a, b);

 

return 0;

}

 

Yukarıdaki birinci printf ifadesi ekrana 11 11 yazdırırken ikinci printf ifadesi 11 10 yazdırır.

 

Karşılaştırma Operatörleri

 

C programlama dilinde toplam 6 tane karşılaştırma operatörü vardır:

 

<                     küçüktür (less than)

>                     büyüktür (greater than)

<=                   küçük eşit (less than or equal)

>=                   büyük eşit (greater than or equal)

==                   eşittir. (equal)

!=                    eşit değildir. (not equal)

 

Mantıksal Operatörler

 

! değil operatörü (not)

&& Ve operatörü (and)

||  veya operatörü (or)

 

<<1          3>>

 
  Bugün 1 ziyaretçi (10 klik) kişi burdaydı! @2009 Marmara üniversitesi  
 
Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol