C ile programlama diline giriş Sohbet, Chat, Sohbet Siteleri
Şifreniz yoksa boş bırakabilirsiniz
mirc indir

C ile programlama diline giriş

Anasayfa > Bilgisayar > C ile programlama diline giriş

C ile programlama diline giriş

Giriş

Bu ilk derste, bir C programın nasıl derlenip çalıştırılacağı ve Internet’te bulabileceğiz derleyicilerden bahsedilecektir. En kolay C uygulamasının derleyip çalıştırdıktan sonra, geriye kalan yalnızca C Programlama Dili’nin kurallarını, yapısını ve deyimlerini öğrenmekten ibarettir.
1.1 Tarihçe

C Programlama Dili genel amaçlı orta seviyeli ve yapısal bir uygulamaylama dilidir. 1972 yılında Dennis Ritchie tarafından Bell Telefon Labaraturvarında Unix işletim sistemi ile kullanılmak için geliştirilmiştır. C, bilhassa sistem uygulamaylamada sembolik makine dili (Asembler) ile tercih edilmektedir. İşletim sistemleri, derleyiciler ve debug gibi aşağı seviyeli sistem uygulamalarının programında yoğun olarak C uygulamaylama dili kullanılır.

C’nin yayılması ve gelişmesi, büyük bir bölümü C dili ile yazılan UNIX işletim sisteminin tanınmış olmasıyla başlamıştır. C Programlama Dili, hemen her alanda kullanılmaktadır. Günümüzde nesneye yönelik uygulamaylama dilleri (C++, Java) ve script dilleri (JavaScript, JavaApplet, PHP) gibi uygulamaylama dilleri C Programlama Dili’nden esinlenmiştir.

C taşınabilir (portable) bir dildir. Yani herhangi bir C programı hiçbir değişikliğe uğramadan, ya da oldukça az bir değişimle, diğer bir derleyicide ve/ya da işletim sistemi üzerinde derlenebilir. Örneğin, Windows işletim sistemlerinde yazılan bir C kodu, Linux, UNIX ya da VAX gibi işletim sistemlerinde de derlenebilir. Taşınabilirlik, hernet kabul ettiği bir standart ile gerçekleştirilebilir. Bugün, C Programla Dili için American National Standards Institute (ANSI) kurumunun Mart 2000’de belirlediği C99: ISO/IEC 9899:1999 standartı Standart C olarak kabul edilmiştir.

Burada verilen C notarında, ağırlıklı olarak ANSI C ya da diğer adıyla Standart C konu edilmiştir.
1.2 Neden C?

C, en tanınmış dildir.
C, güçlü ve esnek bir dildir. C ile işletim sistemi ya da derleyici yazabilir, kelime prosedürciler oluşturabilir ya da grafik çizebilirsiniz.
C, iyi bir program geliştirme ortamına sahiptir.
C, özel komut ve veri tipi tanımlamasına izin verir.
C, taşınabilir bir dildir.
C, gelişimini tamamlamış ve standardı oluşmuş bir dildir.
C, yapısal bir dildir. C kodları fonksiyon olarak adlandıralan alt uygulamalardan oluşmuştur.
C++, Java, JavaScript, JavaApplet, PHP, C#, … gibi diller C dilinden esinlenmiştir.

1.3 İlk C Programı

Program 1.1 de verilen C programı derlendikten sonra, ekrana ‘Merhaba Dünya!’ yazısını basan yalın bir C uygulamasıdır. Satır başlarına yerleştirilen 1:, 2: 3: … rakamlarının yazılmasına gerek yoktur. Bu rakamlar yalnızca daha sonra uygulama hakkında açıklama yapılırken, ilgili satırda bulunan kodlar izah edilirken kullanılacaktır. Bu programın bilgisayarda ilk.c adı ile kaydedilmiştir.

Program 1.1: Derlendikten sonra ekrana ‘Merhaba Dünya!’ yazar
01:
02:
03:
04:
05:
06:
07:
/* ilk.c: ilk C uygulamai */
#include <stdio.h>

main()
{
printf(“Merhaba Dünya!\n”);
}
/* … */
Programda, 1. satırda /* … */ sembolleri görülmektedir. Bu ifadeler arasında yazılan herhangi bir metin, prosedür vb. satırlar, derleyici tarafından işlenmez (değerlendirilmez). Yani /* */ ifadeleri açıklama operatörüdür.
NOT
Açıklama operatörü olarak C++ tarzı iki-bölü (//) de kullanılmaktadır. Günümüzde çoğu C derleyicisi // operatörünü desteklemektedir. Bu operatörü kullanmadan önce derleyicinizin bu operatörü destek verdiğinden emin olun.

/*
Bu satırlar derleyici tarafından
değerlendirilmez. Ayrıca programın C tarzı
çalışma hızını da değiştirmez.
*/

// Bu satırlar derleyici tarafından
// değerlendirilmez. Ayrıca programın C++ tarzı
// çalışma hızını da değiştirmez.
#include <stdio.h>
2. satırdaki #include deyimi, uygulamada eklenecek olan başlık dosyanını işaret eder. Bu örnekte verilen başlık dosyası (header file) stdio.h dir. #include <stdio.h> ifadesi stdio.h dosyasının derleme prosedürüne dahil edileceğini anlatırherhangi bir-hakkında. Bu dosyalardan, Bölüm 20’de yeniden bahsedilecektir.
main()
4. satırdaki main() özel bir fonksiyondur. Ana uygulama bu dosyada saklanıyor anlamındadır. Programın yürütülmesine bu fonksiyondan başlanır. Dolayısıyla her C programında bir tane main() isimli fonksiyon olması gereklidir.
printf()
6. satırdaki printf() standart kütüphane bulunan ekrana formatlı bilgi basma fonksiyondur. stdio.h dosyası bu fonksiyonu kullanmak için uygulama başına ilave edilmiştir. Aşağıda printf() fonksiyonunun kolay kullanımı gösterilmiştir.
Örnek kullanım biçimi Ekranda yazılacak ifade
printf(“Element: Aluminyum”); Element: Aluminyum
printf(“Atom numarası = %d”,13); Atom numarası = 13
printf(“Yoğunluk = %f g/cm3”,2.7); Yoğunluk = 2.7 g/cm3
printf(“Erime noktası = %f derece”,660.32); Erime noktası = 660.32 derece
Daha fazla bilgi için bkz. Bölüm 4.

1.4 Başlık Dosyaları

C dilinde bir uygulama yazılırken, başlık dosyası (header file) olarak adlandırılan bir takım dosyalar #include önprosedürcisi kullanılarak uygulama içine dahil edilir. C kütüphanesinde bulunan çoğu fonksiyon, başlık dosyaları içindeki bazı bildirimleri kullanır. Bu tür dosyaların uzantısı .h dir. ANSI C’deki standart başlık dosyaları şunlardır:

assert.h locale.h stddef.h
ctype.h Math.h stdio.h
errno.h setjmp.h stdlib.h
float.h signal.h string.h
limits.h stdarg.h time.h
Bir çok C derleyicisinde yukarıyadakilere ek olarak kaydedilmiş başlık dosyaları da vardır. Bunlar derleyicinin yardım kısmından ya da derleyicinin kullanım kılavuzundan öğrenilebilir. Ayrıca Bkz. Bölüm 20

ilk.c programında kullanılan başlık dosyası stdio.h, #include <stdio.h> ifadesi ile derleme prosedürüne dahil edilmiştir. stdio.h standard giriş/çıkış (STandarD-Input-Output) kütüphane fonksiyonları için bazı bildirimleri barındıran bir dosyasıdır. Programda kullanılan printf() fonksiyonunu kullanmadan önce bu başlık dosyası programın başına kesinlikle ilave edilmelidir. Aksi halde derleme esnasında

undefined reference to _printf
biçiminde bir hata mesajı ile karşılaşılır.

1.5 Kaynak Kodunun Derlenmesi

C uygulamaları ya da kaynak kodları (source code) uzantısı .c olan dosyalarda saklanır. Kaynak kod, bir C derleyicisi (C compiler) ile nesne koduna (object code) daha sonra makul bir bağlayıcı (urler) programı ile işletim sistemininde çalıştırılabilen (executable) bir koda dönüştürülür. Derleme prosedürü detaylı olarak Bölüm 22’de anlatılmıştır. Bazı işletim sistemleri ile kullanılan C Derleyicileri ve bu derleyicilerde ilk.c uygulamasının komut satırında nasıl derleneceği Tablo 1.1’de verilmiştir. Eğer ismi geçen derleyicinin bir editörü varsa ilk.c bu editör de derlenebilir.

Tablo 1.1: İşletim sistemleri, bazı derleyiciler ve derleme komutları
İşletim Sistemi Derleyici Derleme Çalıştırma
MS-DOS / Windows Microsoft C cl ilk.c ilk.exe
Borland Turbo C Web tcc ilk.c ilk.exe
Borland C bcc ilk.c ilk.exe
Zortec C ztc ilk.c ilk.exe
GCC (GNU Compiler Collection) Windows için Web gcc ilk.c -o ilk.exe ilk.exe
UNIX / Linux GCC (GNU Compiler Collection) Web gcc ilk.c -o ilk ./ilk ya da nice ilk

Bunların dışında, komut satırını kullanmadan, kodlarınızı Windows ortamında çalışan GCC tabanlı DevC++ ya da Salford Plato3 derleyicileri ile derlemek mümkün. Bu tip derleyicilerde hata ayıklama prosedürünü basitlaştırmak için kodlar farlı renkte gösterilir. Fakat uygulama çıktıları için kullanılan ekran klasik DOS ekranıdır. Şekil 1.1 ve 1.2″de bu uygulamaların ekran görüntüleri verilmiştir.

Şekil 1.1: DevC++ derleyicine ait editör. Derleme ve çalıştırma prosedürleri araç çubuğu üzerindeki düğmelerla yapılır.
Şekil 1.2: Silverfrost Salford (Plato3) derleyicine ait editör. Derleme, bağlama ve çalıştırma prosedürleri araç çubuğu üzerindeki düğmelerla yapılır.
Derslerimizde kullanılan kaynak kodları, Turbo C ve GCC derleyicileri ile komutsatırında derlenmiştir. Turbo C derleyicisi isteğe bağlı editörden ya da komut satırından derlenebilir. Editörü başlatmak için C:\TC> dizini altındaki TC.EXE dosyasının çalıştırılması yeterli olacaktır. Şekil 1.3’de Turbo C editör ortamı gösterilmiştir.

Şekil 1.3: Turbo C derleyicisine ait editör. Derleme için F9, Derleme bağlama ve çalıştırma prosedürleri için CTRL+F9 tuş kombinasyonu kullanmak mümkün..

NOT
DevC++, Salford, GCC ve Turbo C derleyicilerini C/C++ Derleyicileri
kısmında bulabilirsiniz.

ilk.c nin Borland Turbo C ve GCC Programları ile derlenmesi ve çalıştırılması:

DERLEME ve ÇALIŞTIRMA
MS DOS (Turbo C) Linux (GCC)
C:\TC> tcc ilk.c
C:\TC> ilk.exe
$ gcc ilk.c -o ilk
$ ./ilk
ilk.c nin çıktısı:

ÇIKTI

Merhaba Dünya!
1.6 C Kodlarının Temel Özellikleri

Bir C programı aşağıda verilen özellikleri kesinlikle taşımalıdır.

Yazılımda kullanılacak olan her fonksiyon için ilgili başlık dosyası programın başına ileve edilmedlidir.
Her C programı main() fonksiyonunu içermelidir.
Program içinde kullanılacak olan parametreler ve sabitler kesinlikle tanımlanmalıdır.
Satırın sonuna ; işareti konmalıdır.
Her bloğun ve fonksiyonun başlangıcı ve bitişi sırayla { ve } sembolleridir.
C dilinde yazılan kodlarda ufak-büyük harf ayrımı vardır (case sensitive).
Örneğin A ile a derleyici tarafından farklı değerlendirilir.
Açıklama operatörü /* */ sembolleridir.

1.7 Kod Yazımı için Bazı Tavsiyeler

Program açıklamalarını ve döküman hazırlama işini uygulama yazıldıkça yapın! Bu unutulmaması gereken oldukça önemli husustur.
Değişken, sabit ve fonksiyon adları anlamlı kelimelerden seçilip yeteri kadar uzun olması gereklidir. Eğer bu isimler bir kaç kelimeden oluşacak ise, kelimeler alt çizgi ( _ ) ile ayrılmalıdır ya da her kelime büyük harfle başlamalıdır. Örneğin:

int son_alinan_bit;
void KesmeSayisi();
float OrtalamaDeger = 12.7786;
Sabitlerin tüm harflerini büyük harfle yazın. Örneğin:

#define PI 3.14;
const int STATUS = 0x0379;
Her alt yapıya girerken birkaç boşluk ya da TAB tuşunu kullanın. Bu okunabilirliği arttıracaktır. Örneğin:

k = 0;
for(i=0; i<10; i++)
{
for(j=0; j<i; j+=2)
{
do{
if( j>1 ) k = i+j;

x[k] = 1.0/k;
}while(k!=0);
}
}
Aritmetik operatörler ve atama operatörlerinden önce ve sonra boşluk karakteri kullanın. Bu, yazılan matematiksel ifadelerin daha iyi anlaşılmasını sağlayacaktır.Örneğin:

h_max = pow(Vo,2) / (2*g);
Tf = 2*Vo/g;
Vy = Vo – g*t;
y = Vo*t – (g*t*t)/2.0;
z = ( a*cos(x) + b*sin(x) )*log( fabs(y) );
Program bittikten sonra yeniden yeniden uygulamanızı inceleyerek, uygulamanızı daha iyi biçimde yazma yollarını arayın ve aynı fonksiyonları daha kısa algoritmalarla ve/ya da daha modüler biçimde elde etmeye çalışın.

Powered by PHP

Ekleyen : - Tarih: 04 Haziran 2017 - 10:48 AM - Okunma Sayısı :
chat, chat siteleri Google
chat, chat siteleri

BENZER İÇERİKLER

İlginizi Çekebilecek Diğer İçeriklerimiz

Zenginlik ve DostlukSehirlerSohbet.Com Şehirler Sohbet

Burdur sohbet siteleriSehirlerSohbet.Com Şehirler Sohbet

DİĞER YORUMLAR

Yorumlarınızı Paylaşabilirsiniz

İsminiz

E-Posta Adresiniz

Cevabınız



Sohbet haber