Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

C PROGRAMLAMA DİLİNE GİRİŞ. 2/60 C Dili'nin Tarihçesi C kendinden önceki programlama dilleri olan B ve BCPL 'nin gelişmişidir. C C B B BCPL 1967 1970.

Benzer bir sunumlar


... konulu sunumlar: "C PROGRAMLAMA DİLİNE GİRİŞ. 2/60 C Dili'nin Tarihçesi C kendinden önceki programlama dilleri olan B ve BCPL 'nin gelişmişidir. C C B B BCPL 1967 1970."— Sunum transkripti:

1 C PROGRAMLAMA DİLİNE GİRİŞ

2 2/60 C Dili'nin Tarihçesi C kendinden önceki programlama dilleri olan B ve BCPL 'nin gelişmişidir. C C B B BCPL

3 3/60 C Dili'nin Tarihçesi C dili konusundaki ilk kitap, 1978'de Brian Kernighan ve Dennis Ritchie tarafından yazılmıştır.

4 4/60 C Dili'nin Tarihçesi 1983 yılında C programlama dilini standardize etmek amacıyla toplanan bir komite ANSI C (American National Standart Institute) standardını tanımlamıştır. C başlangıçta birçok kişi tarafından UNIX işletim sistemini geliştiren dil olarak biliniyordu. Günümüzde hemen hemen bütün büyük işletim sistemleri C ya da C++ ile yazılmıştır.

5 5/60 C’nin özellikleri C donanımdan bağımsız (machine independent) ve taşınabilirdir (portable). Taşınabilirlik, aynı programın farklı donanımlarda ve farklı işletim sistemlerinde işletilebilirliğini ifade eder.

6 6/60 C’nin özellikleri Bir dilin verimliliği (productivity), hızlı fakat fazla yer kaplamayan yazılımlar geliştirmeye olanak sağlaması ile ölçülür. C programlama dili verimli, basit, fakat güçlü yapısından ve bu dilde geliştirilen uygulamaların taşınabilir olmasından dolayı yaygın olarak kullanılmaktadır.

7 C Programlarının Temel Yapısı

8 8/60 C Programlarının Temel Yapısı Bir C programı iki temel bölümden oluşur: Önişlemci Direktifleri (Preprocessor Directives) ve Ana Fonksiyon (main function).

9 9/60 Önişlemci Direktifleri Önişlemci direktifleri # işareti ile başlar ve program derlenmeden önce C önişlemcisi tarafından işletilir. Her bir önişlemci direktifinin farklı bir görevi vardır. En çok kullanılan iki direktif #include ve #define dır.

10 10/60 Önişlemci Direktifleri C programlama dilinde belirli işleri gerçekleştiren program parçaları C’ nin temel yapısı içinde yer almaz. Bu nedenle program içinde kullanılan fonksiyonların kendilerinin ya da başlıklarının yer aldığı dosyalar #include direktifi kullanılarak ana programa dahil edilir.

11 11/60 Önişlemci Direktifleri Örneğin printf fonksiyonunun özet bilgisi stdio.h isimli dosyanın içinde yeri almaktadır. Bir programda printf fonksiyonu kullanılacaksa, programın başında stdio.h (Standart Input Output) dosyasının #include direktifi ile programa dahil edilmesi gerekir. Aksi halde printf fonksiyonu kullanılamaz. Bu dosya programa #include direktifi ile dahil edilir. C dilinde.h uzantılı bu dosyalar başlık (Header) dosyaları adı verilir.

12 12/60 C’deki bazı kütüphaneler Kütüphaneİçeriği stdio.h Standart giriş-çıkış komutları conio.h DOS destekli giriş-çıkış komutları math.h Matematiksel fonksiyonlar stdlib.h Dönüşüm, sıralama, arama vb. komutları graphics.h Grafik ortam komutları dos.h DOS fonksiyonları ctype.h Karakter dönüşüm ve sınıflandırma komutları string.h Alfasayısal ve bazı bellek yönetim komutları

13 13/60 Main Fonksiyonu Hemen hemen bütün C programları birden fazla fonksiyondan oluşur. main () bütün C programlarında bulunması gereken programın ana gövdesidir. İlk çalıştırılacak olan fonksiyon main () yani ana fonksiyondur.

14 14/60 Main Fonksiyonu Çalıştırılacak ifadeler, (statements) main () fonksiyonu içerisine { } işaretleri arasına yazılır. Açılan her { işareti mutlaka } ile kapatılmalıdır. Bu iki işaret arasında kalan kısımlara blok (block) ismi verilir.

15 15/60 Main Fonksiyonu En dıştaki { } işaretleri arasında kalan blok programın asıl kısmıdır. Bu kısım, bildiriler (declarations) ve işletilebilir ifadeler (executable statements) olmak üzere iki bölümden oluşur. Bildiriler, bir program içerisinde kullanılacak değişkenlerin adlarını belirlemek amacı ile yazılırlar. İşletilebilir ifadeler de yapılacak işlemleri yerine getirecek komutlardır.

16 16/60 Basit Bir C Programı Açıklama satırları Başlık dosyası Blok başlangıcı ve bitişi Önişlemci direktifi Ana fonksiyon başlığı

17 17/60 C Dili'nin Yazım Kuralları (Syntax) C Dili birden fazla satırdan oluşan açıklama satırlarına izin verir. Bu satırlar /* işaretleri ile başlar ve */ işaretleri ile biter ve açıklama (comment) adını alırlar. Programın adı, ne iş yaptığı gibi açıklayıcı bilgi içerirler. Programcı tekrar kendi yazdığı programa dönüp baktığında hatırlayamayacağı önemli yerlere de açıklama yazabilir.

18 18/60 C Dili'nin Yazım Kuralları (Syntax) Açıklama satırları programın derlenmesi sırasında derleyici tarafından göz ardı edilir, yani dikkate alınmazlar. Bu satırlar sadece programın okunabilirliğini (readability) arttırır ve program üzerinde daha sonra yapılacak çalışmaları kolaylaştırır. İyi programcılık alışkanlıkları açısından programcı açıklama satırları yazmaya özen göstermelidir.

19 19/60 C Dili'nin Yazım Kuralları (Syntax) C'de her işletilebilir ifade ; ile sonlandırılır. Bir satıra birden fazla ifade yazılabilir. Ancak önişlemci direktifleri, mutlaka her satırda yalnızca bir tane olacak şekilde yazılmalıdır.

20 20/60 C Dili'nin Yazım Kuralları (Syntax) C programlama dilinde bütün anahtar kelimeler ve komutlar küçük harfle yazılır. (# define direktifi hariç ) C büyük-küçük harfe duyarlıdır (case sensitive). Yani "TOPLAM", "toplam" ve "tOpLaM" kelimelerinin hepsi C derleyicisi tarafından farklı algılanırlar.

21 21/60 C Dili'nin Yazım Kuralları (Syntax) Program yazım kuralları içerisinde olmasa dahi programlarımızı yazarken okunabilirliliği arttırmak için ana ifadeleri sola dayalı bloklar içerisine yazılan ifadeleri ise 3 boşluk girinti (indent) verilerek içerden yazmaya özen gösterilmelidir.

22 22/60 C Dili'nin Yazım Kuralları (Syntax) Bir C programında birden fazla blok kullanılacaktır. Blok içindeki ifadelerin 3 boşluk girinti verilerek içeriden yazılması program stilinin düzgün olmasını sağlayacak bu da anlaşılabilirlik ve okunabilirliği arttıracaktır.

23 23/60 İyi Bir Program Stili Kötü Program Stili

24 İşleçler (Operatör)

25 25/60 İşleçler (Operatör) İşleç (operatör), matematiksel, mantıksal ve atama işlemlerini gerçekleştirmek için kullanılan simgelerdir. Bu işleçler ile işleme giren değerlere de işlenen (operand) adı verilir. Operatörler birden fazla operand alabilirler.

26 26/60 Matematiksel İşleçler MatematiktekiC dilindekiişlem. X veya hiçbirşey*Çarpma Mod%Modüler bölüm / ÷/Bölme Artırma (unary increment) -- 1 Eksiltme (unary decrement) ++Toplama --Çıkartma

27 27/60 Unary operatörlerin ifadenin sağında ya da solunda olması ile anlam değişik olur A++ (postincrement) Önce A'yı kullan, sonra içindeki değeri 1 artır. ++A(preincrement) Önce A'yı 1 artır, sonra bu arttırılmış değeri kullan. A--(postdecrement) Önce A'yı kullan, sonra içindeki değeri 1 eksilt. --A (predecrement) Önce A'yı 1 eksilt, sonra bu eksiltilmiş değeri kullan.

28 28/60 a=4 ve b=5 olsun…

29 29/60 Programcı, Arttırma ve eksiltme operatörlerini kullanırken ifadeleri yoruma mahal bırakmayacak şekilde anlaşılır ve açık bir şekilde yazmalıdır.

30 30/60 Örneğin; c=a+++b; ifadesinde ++, a değişkenine mi aittir yoksa b değişkenine mi aittir? Derleyiciler de burada takılacakları için hangisine aitse ona göre bir boşluk bırakılmalıdır. Farklı derleyiciler farklı şekilde yorumlayabilir.

31 31/60 Yani; ya c=a++ +b ya da c=a+ ++b şeklinde yazmak daha doğru olacaktır.

32 32/60 Mantıksal işleçler MatematiktekiC dilindekiişlem >>Büyük <=Büyük veya eşit ≤<=Küçük veya eşit ===Eşit (Karşılaştırma) ≠! =Eşit değil &&Ve (And) VIIVeya (Or) ‘!Olumsuz (not-invert)

33 33/60 Ve (&&) ABİşlemSonuç Hayır A && BHayır EvetA && BHayır EvetHayırA && BHayır Evet A && BEvet

34 34/60 Veya (||) ABİşlemSonuç Hayır AIIBHayır EvetAIIBEvet HayırAIIBEvet AIIBEvet

35 35/60 Atama (Assign) İşleçleri =Atama +=Toplayarak atama -=Eksilterek atama *=Çarparak atama /=Bölerek atama %=Mod alarak atama

36 İşleçlerde Öncelik (Precedence) Sırası

37 37/60

38 38/60 Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Kullanılacak bütün değişkenlerin kullanılmadan önce C derleyicisine bildirilmeleri gerekir. Derleyiciye değişkenleri bildirme işine, değişken tanımlamak (variable definition) denir. Değişken tanımlamak, değişken için bir isim seçmek ve içerisinde ne tür bir veri saklayacağını söylemekle yapılır.

39 39/60 Değişken Tanımlamaları (Definition) ve Veri Türleri (Data Type) Her değişkenin ismi, veri türü ve değeri (value) vardır. Değişken ismi değişkeni saklamak için ayrılmış hafıza hücresine verilecek isim; veri türü saklanan bilginin türü (ondalık sayı, tamsayi...), değer ise değişken içinde saklanan bilginin kendisidir.

40 40/60 Değişken İsimlendirme Program içinde kullanılacak değişken isimleri programcı tarafından verilir. Değişkenlere isim verirken aşağıdaki kurallara uyulması zorunludur.

41 41/60 Kural 1 Her programlama dilinin kendine ayırdığı (reserve) ve komutları için seçtiği sözcükler vardır. Bunlara anahtar sözcük (keyword) denir. C dili içerisindeki anahtar sözcükler, komut veya fonksiyon adları değişken ismi olarak kullanılamaz.

42 42/60 C’de ayrılmış sözcükler Asmautobreakcasecdecl Charconstcontinuedefaultdo doubleelseenumexternfar floatforgotohugeif intinterruptlongnearpascal registerreturnshortsignedsizeof staticstructswitchtypedefunion unsignedvoidvolatilewhilefortran _CS_BP_DI_SI_SP _DS_AX_BX_CX_DX _ES_AH_BH_CH_DH _AL_BL_CL_DL

43 43/60 Kural 2 Değişken isimleri içerisinde a-z ve A-Z arası İngiliz harfleri, 0-9 arası rakamlar ve özel karakter olarak yalnızca "_" (alt çizgi) kullanılabilir. Özel karakterler (+, -, ! vs.) ve Türkçe karakterler (ÜüÇçĞğİıÖöŞş) kullanılamaz.

44 44/60 Kural 3 Değişken ismi rakam ile başlayamaz, fakat daha sonra rakam kullanılabilir. 1.vize adında değişken olamaz ama vize1 olabilir.

45 45/60 Kural 4 Değişken isimleri istenilen uzunlukta olabilir. Ama C derleyicisi için ilk 32 karakter belirleyicidir. Yani, iki değişken isminin ilk 31 karakteri aynı ise sonrakiler farklı bile olsa derleyici tarafından aynı algılanır.

46 46/60 Ayrıca Her değişkene içerisinde tuttuğu değeri hatırlatacak şekilde isimler verilmelidir. Değişkenlerin isimlerinin çok fazla uzun olmamasına dikkat edilir. İki kelimeden oluşan değişken isimleri arasına ya altçizgi ( _ ) ya da ikinci kelimenin baş harfi büyük yazılarak okunması kolaylaştırılmalıdır.

47 Veri Türleri

48 48/60 Veri Türleri Program içerisinde kullanılacak değerlerin türünü belirlerler. C dili içerisindeki temel veri türleri char, int, float ve double'dır.

49 49/60 char Bir harf, bir rakam veya özel bir simgeyi saklayabilirler. char tipindeki her değer tek tırnak ‘ ‘ karakteri arasında yazılmalıdır.

50 50/60 Örnek: ‘A’ ‘z’ ‘2’ ‘*’ ‘:’ ‘ ’ Yalnız aktarılan karakterler hafızada karakter olarak değil, ASCII tablosundaki sayısal karşılıkları ile tutulurlar.

51 51/60 int ile arasındaki tamsayı değerleri saklamak için kullanılır. C'de işaretsiz yazılmış bir sayı pozitif olarak algılanacaktır.

52 52/60 float Ondalıklı olarak verilen sayıları ifade etmek için kullanılan değerleri tanımlamak için kullanılır.

53 53/60 double Ondalıklı olarak verilen çok küçük ve çok büyük sayıları ifade etmek için kullanılan değerleri tanımlamak için kullanılır. float türünden iki kat daha fazla duyarlılığa sahiptir.

54 Tanımlama yerleri, şekilleri ve ilk değer verilmesi (Initialization)

55 55/60 Tanımlama Standart C de üç ayrı yerde değişken tanımlanabilir.  Main fonksiyonundan önce,  Bloklar başlar başlamaz yani { ve } işaretleri arasında ve  Fonksiyonlarda parametre olarak tanımlanabilirler. Bu üç tanımlama yerinin kendine göre farklılıkları vardır.

56 56/60 Genel kullanımı: DeğişkenTürü değişkenAdı ; ÖRNEK:  long int maas ;

57 57/60 Eğer istenirse… Değişken isminden sonra atama işareti olan = kullanılarak ilk değer ataması da yapılabilir. İçerisinde ilk değer olmayan değişkenlerin içerisindeki değerler tanımlanma yerine göre değişir.

58 58/60 ÖRNEK:  int a;  a=1; yerine  int a=1; aynı ifadelerdir.

59 59/60 ÖRNEK: int a, b, c; /*aynı satırda aynı türde olan değişkenler tanımlanabilir. Okunabilirlik açısından her virgülden sonra bir boşluk bırakılır*/ char m='k'; double n=5.05;

60 60/60 …:Dikkat:… main fonksiyonunun üstünde tanımlanan değişkenlerin ilk değerleri verilmemişse otomatik olarak sayısal olanlar 0 diğerleri boş olarak belirlenirler. Fakat fonksiyon içerisinde tanımlanan değişkenlerin ilk değerleri verilmediğinde hafızada tanımlandıkları yerdeki bulunan rasgele değerler olacaktır. Bu konuya çok dikkat edilmesi gerekir. »GENEL GİRİŞ-ÇIKIŞ FONKSİYONLARIGENEL GİRİŞ-ÇIKIŞ FONKSİYONLARI


"C PROGRAMLAMA DİLİNE GİRİŞ. 2/60 C Dili'nin Tarihçesi C kendinden önceki programlama dilleri olan B ve BCPL 'nin gelişmişidir. C C B B BCPL 1967 1970." indir ppt

Benzer bir sunumlar


Google Reklamları