C Başlangıç

C Başlangıç

Tarhi : 23-12-2020 05:04:11 | Yazar : ÇAĞLAR BOSTANCI

Merhaaba C diline başlarken her programlama için bir editöre ihtiyaç duyulur C yazmak için öncelikli olarak Dev-C++ Editörünü indirmenizi öneririm. Bu programı bloodshed.net indirebilirsiniz. indireme işlemi tamamlandıktan sonra varsayılan ayarlarla programı yüklemeniz yeterli olacaktır. Program yüklendikten sonra yazmış olduğunuz kaynak kodun derlenip makine diline çevrilmesi gerekmektedir. Bu işlemi ise programın Execute > compile (F9 Kısayolu) sekmesinden derleyebilirsiniz. Aynı zamanda C programlama dili ile yazmış olduğunuz kodları derledikten sonra çalıştırmak için yine Execute > Run (F10 Kısa yolu) sekmesinden çalıştırabilirsiniz. Bunları her ikisini yanı anda yapmak içinse yine Excute > Compile & Run (F11 Kısa yolu) sekmesinden derleyip çalıştırabilirsiniz. Kaynak koddaki her değişiklikten sonra değişikliklerin oluşması için tekrardan derlemeniz (Compile) etmeniz gerekmedir.Editörü kurduktan sonra aşağıdaki kodları uygulayabilirsiniz.

İlk olarak dev c++ editörümüz ile ekrana merhaba dünya yazdıralım. Öncelikle dev C++ programını açın sonra file > new project > empty project tıklayın ve projeyi kaydedeceğiniz dosyayı seçin. Daha sonra aşağıda yazmış olduğumuz kodların açıklama satırıları hariç sayfaya yazın. Daha sonra ctrl + s veya file > save butonuna tıklayın. Dosyanın adını “proje-1” ve uzantısını .c olarak belirleyin ve kadedin. Daha sonra programı execute > compile (F9) butonuna tıklayarak derleyin. Daha sonra execute > run (F10 kısayolu) diyerek programı çalıştırın. Ekrana siyah bir ekran gelecek ve “c ile programlamaya merhaba” yazacaktır. Aynı zamanda compile ile derleme yaptıktan sonra dosyaları kaydettiğiniz dizine .exe uzantılı bir dosyanın daha oluştuğunu göreceksiniz. Bu dosya bizi yazmış olduğumuz programın derlenmiş halider.

C programlama dilinde ekrana bir çıktı vermek için printf(“içerik”,degisken) fonksiyonu kullanılır. Printf fonksiyonunda php deve diğer yazılım dillerinde olduğu gibi değişkenler direk içerisine yazılmaz. Değişkenin geleceği yere

Çevirim Değiken Tipi
%d İşretli tam saylar için. (char,short,int,long)
%u İşaretsiz tam sayılar. (unsigned char,unsigned short,unsigned int,unsigned long)
%f Ondalık sayılar için. (Float)
%lf Ondalık Sayı (Float, Double)
%s Karakter dizisi. (String)
%c Tek karakter (char)
%e – %E Ondalıklı sayılar ve üstlü biçimde (double, float)
%x – %X Onaltılık Biçinde

Yukardaki şekilde çevirim operatörleri yerleştirilir ve sonra operatör sırasına göre string tanımlama sonrası virgüllerle ayrılarak değişkenler gelir.

C Değişken Tipleri

C programlama dilinde değişken tipler char ile başlayıp long ile bitmektedir. Aşağıda tabloda değişkenlerin Ram’de kaç baytlık yer kapladığı toplomda belirtilmiştir. Dikkat edilmesi gereken konu string değişken tipini aslında birden çok char yani dizi char mantığında olduğunu unutmamanız. Örneğin string a =”caglar”; a değişkeni Ram’da (6*8) 48 baytlık yer kaplamaktadır.

Değişken Adı BIT Kasadığı Değer
unsigned char 8 -128:127
char 8 0:255
short 16 -32768:32767
unsigned short 16 0:65.535
int 32 -2147483648:21447484647
unsigned int 32 0:4274967295
long 64 -9223372036854775808:9223372036854775807
unsigned long 64 0:18446744073709551615
float 32 -3.402823e38:3.402823e38
double 64 -+5.010-324:-+1.7×10308
string 8*1 Bir karater

C de Dört İşlem

C programlama dilinde toplama, çıkarma, bölme, çarpma ve mod işlemleri ile ilgili aşağıda bir örnek verilmiştir. Dikkat edilmesi gereken durum bu işlemlerin float bir değer alıp almadığı. Eğer sonuç float bir değer çıkıyor ise diğer değişkenlerde float olarak tanımlanmalıdır. C de dört işlem yaparken sadece sonuç değerinin float olması değerin ondalık bir sayı alabileceği anlamına gelmez.

Operatör İşlev
+ Toplama
Çıkarma
* Çarpma
/ Bölme
% Mod

C de Sabit Değişken Tanımlama

C programlama dilinde sabit değişkenler tanımlanırken #define kullanılır ve değişken adı verildikten sonra değişken değeri atanır. Aşağıda bir örneği verilmiştir.

C dilinde değişken tanımlanmadan önce değişken tipi yazılır (char,short,int,long vb ) daha sonra değişken tanımlanır. Değiken tanımlanırken:

  • Türkçe karakter kullanılmaz
  • Sözcüklerde boşluk bırakılmaz _ karater kullanılır.
  • Özel karakterler kullanılmaz. (^+%&/()? vb)
  • Büyük küçük harf duyarlılığı olduğu için yazımda dikkat edilir
  • Programlama dili için özel anlam ifade eden sözcükler kullanılmaz. (define, function, char, short, int vb.)
Dikkat edilir.

C’de Kara Yapıları İf Kullanımı

C programlama dilinde kara yapısına örnek aşağıda verilmiştir. İf karar bloğunda birden fazla mantıksal operatör ile karar yapısı kullanılabilir;

C de karar yapılarına geçmeden aşağıdaki operatörleri inceleyelim

Artırma Operatörleri
Operatör İşlevi
++x Önce x’i bir artır ve daha sonra x değerini kullan
x++ Önce x değerini kullan daha sonra x değerini bir artır.
–x Önce x değerini bir eksilt daha sonra x değerini kullan
x– Önce x değerini kullan daha sonra x değerini bir eksilt
Eşitlik ve İlişki Operatörleri
Operatör İşlevi
== Eşitse
!= Eşit Değilse
> Büyükse
< Küçükse
>= Küçük Eşit
<= Büyük Eşit
Mantıksal Operatörler
Operatör İşlevi Durum
&& VE / AND true && true = true Diğer hallerde False
|| OR false || false = false Diğer hallerde true
^ XOR true ^ false = true Farlı değerlerde True aynı değerlerde False true ^ true = false
~ Değil/Not a=true | ~a=false

C’de İf-else if Kullanımı

Birden çok karar yapınız varsa else if yapısını kullanabilirsiniz. Dikkat etmeniz gereken durum şartı sağlayan blok çalışır ve sonraki bloklar çalışmaz.

c’de switch Kullanımı

C programlama dilinde if karar yapısına benzer bir yapıdadır. Farkı bir değişkendeki değere göre işlem blokları çalışır. Break komutunu yazmayı unutursanız bir sonraki break; komutuna kadar olan kod bloklarını çalıştırır. Default: bu kısımda case deger: de belirtilmemiş bir değer varsa son olarak çalışan bölümdür. Yani else olarak düşünebiliriz.

C’de Dallanma Komutu GOTO Kullanımı

Kodların yazıldığı alanda bir çapa atıyorsunuz ve daha sonra kodlar satır satır akarken tekrar atmış olduğunuz çapaya giderek oradan devam etmesiniz istiyorsunuz. Yapısal programlamaya aykırı bir durumdur. Eğer size while, for, do while gibi döngüler kullanmadan bir döngü oluşturmanız isteniyorsa go to ile bunu yapabilirsiniz. Aşağıda ekrana 10 kez “MERHABA C” yazdıran bir uygulama yapılmıştır.

C’de Döngüler

Bir işi sınırsız veya sınırlı bir şekilde tekrar tekrar yaptırmak istiyorsanız döngüleri kullanmanız gerekmektedir. Döngüler Şartlı Döngüler (while/do While) ve Sabit Döngüler (for) olmak üzere ikiye ayrılır. ilk olarak sabit bir döngü yapalım.

C’de For Döngüsü

For döngüsü üç parametre ile çalışır for(parametre 1; parametre 2; parametre 3). Parametre 1 de döngüyü saymak için değişken oluşturulur ve var sayılan değer atanır. İkinci parametrede döngünün devemını sağlayacak şart girilir. Üçüncü parametrede ise her döngü sonrasında sayaç değişkeninin kaç artacağı belirlenir. Ekrana n.Döngü şeklinde 10 kez dönmesini isteyelim.

C’de While Döngüsü

C programlama dilinde döngünün kaç kez döneceğini belli değilse while döngüsü kullanılır. while tek bir parametre ile şart ile çalışır. Şart sağlandığında ise break; komutu ile döngüden çıkılır. Aşağıda for döngüsüne benzer bir yapıyla ve farklı bir yapıda iki tane döngü sağlanmıştır.

Diğer bir örnek:

C’de Do while Kullanımı

Do while aslında while yapısı ile aynı tek farkı while kullanımında önce şartı sağlanması isternirke dowhile de ise önce kodlar çalıştırlıyor daha sonra şartı sağlayıp sağlamama durumuna göre döngü devam ediyor.

C’de Continue Kullanımı

for-while-do whil gibi döngülerde istenen bir şart sağlandığında döngünün çalışmaması isteniyorsa continue kullanılır. Aşağıdaki kod bloğu çalıştığında 5. Dongu yazmadığı anlaşılacaktır. Çünkü verilen şartta döngü 5’e geldiğinde döngü tekrar bir sonraki sayaç değerine atlayarak çalışyor.


Array ( [0] => WP_Term Object ( [term_id] => 468 [name] => C başlangıç [slug] => c-baslangic [term_group] => 0 [term_taxonomy_id] => 468 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 3 [filter] => raw ) [1] => WP_Term Object ( [term_id] => 478 [name] => C de Dört İşlem [slug] => c-de-dort-islem [term_group] => 0 [term_taxonomy_id] => 478 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [2] => WP_Term Object ( [term_id] => 476 [name] => C de Sabit Değişken Tanımlama [slug] => c-de-sabit-degisken-tanimlama [term_group] => 0 [term_taxonomy_id] => 476 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [3] => WP_Term Object ( [term_id] => 475 [name] => C Değişken Tipleri [slug] => c-degisken-tipleri [term_group] => 0 [term_taxonomy_id] => 475 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [4] => WP_Term Object ( [term_id] => 467 [name] => C dersleri [slug] => c-dersleri [term_group] => 0 [term_taxonomy_id] => 467 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 4 [filter] => raw ) [5] => WP_Term Object ( [term_id] => 469 [name] => C programlama dili [slug] => c-programlama-dili [term_group] => 0 [term_taxonomy_id] => 469 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [6] => WP_Term Object ( [term_id] => 486 [name] => C’de Continue Kullanımı [slug] => cde-continue-kullanimi [term_group] => 0 [term_taxonomy_id] => 486 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [7] => WP_Term Object ( [term_id] => 483 [name] => C’de Dallanma Komutu GOTO Kullanımı [slug] => cde-dallanma-komutu-goto-kullanimi [term_group] => 0 [term_taxonomy_id] => 483 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [8] => WP_Term Object ( [term_id] => 485 [name] => C’de Do while Kullanımı [slug] => cde-do-while-kullanimi [term_group] => 0 [term_taxonomy_id] => 484 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [9] => WP_Term Object ( [term_id] => 481 [name] => C’de Döngüler [slug] => cde-donguler [term_group] => 0 [term_taxonomy_id] => 481 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [10] => WP_Term Object ( [term_id] => 482 [name] => C’de For Döngüsü [slug] => cde-for-dongusu [term_group] => 0 [term_taxonomy_id] => 482 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [11] => WP_Term Object ( [term_id] => 480 [name] => C’de İf-else if Kullanımı [slug] => cde-if-else-if-kullanimi [term_group] => 0 [term_taxonomy_id] => 480 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [12] => WP_Term Object ( [term_id] => 477 [name] => C’de Kara Yapıları İf Kullanımı [slug] => cde-kara-yapilari-if-kullanimi [term_group] => 0 [term_taxonomy_id] => 477 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [13] => WP_Term Object ( [term_id] => 479 [name] => c’de switch Kullanımı [slug] => cde-switch-kullanimi [term_group] => 0 [term_taxonomy_id] => 479 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [14] => WP_Term Object ( [term_id] => 484 [name] => C’de While Döngüsü [slug] => cde-while-dongusu [term_group] => 0 [term_taxonomy_id] => 485 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [15] => WP_Term Object ( [term_id] => 17 [name] => çağlar hoca [slug] => caglar-hoca [term_group] => 0 [term_taxonomy_id] => 17 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 12 [filter] => raw ) [16] => WP_Term Object ( [term_id] => 169 [name] => PHP Hocası [slug] => php-hocasi [term_group] => 0 [term_taxonomy_id] => 169 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 19 [filter] => raw ) [17] => WP_Term Object ( [term_id] => 171 [name] => PHP Uzmanı [slug] => php-uzmani [term_group] => 0 [term_taxonomy_id] => 171 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 24 [filter] => raw ) [18] => WP_Term Object ( [term_id] => 473 [name] => programlama [slug] => programlama [term_group] => 0 [term_taxonomy_id] => 473 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [19] => WP_Term Object ( [term_id] => 471 [name] => programlama dersleri [slug] => programlama-dersleri [term_group] => 0 [term_taxonomy_id] => 471 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) [20] => WP_Term Object ( [term_id] => 472 [name] => turkey php developer [slug] => turkey-php-developer [term_group] => 0 [term_taxonomy_id] => 472 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 3 [filter] => raw ) [21] => WP_Term Object ( [term_id] => 164 [name] => web tasarım [slug] => web-tasarim [term_group] => 0 [term_taxonomy_id] => 164 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 18 [filter] => raw ) [22] => WP_Term Object ( [term_id] => 470 [name] => Yazılım dersleri [slug] => yazilim-dersleri [term_group] => 0 [term_taxonomy_id] => 470 [taxonomy] => post_tag [description] => [parent] => 0 [count] => 1 [filter] => raw ) )