C ile programlamaya başlangıç - 1

Merhabalar arkadaşlar. Bir süredir düşünüyordum, blogda ders anlatmayı. Ancak, projelerimden dolayı erteleyip duruyordum. Öncelikle biraz kendimi tanıtayım. İzmir Ekonomi Üniversitesi, Yazılım mühendisliği öğrencisiyim. Tarımsal yazılımlar, gömülü sistemler ve robotik üzerine uğraşmaktayım. Bilgisayar ile 1999 yılında tanıştım ve 2002 yılından beride programlama tanışıyorum. Hemen vakit kaybetmeden neden C dili ile başlıyoruz sorusuna cevap vermeyim .

Arkadaşlar forumlarda, bilhassa bizim forumumuz da Java ve C# programlama dilinin daha güncel bir dil olduğunu ve onunla başlanmasını şeklinde öneriler vardır. Arkadaşların düşünceleri doğrudur ama hiç bilmeyen biri için bir çok şey anlamsız gelecektir. Bunun sebebi ise %100 object oriented (Nesneye dayalı) programlama dili olmasıdır. Kısaca nedir object oriented ? Aynı özellikleri taşıyan verileri bir araya toplanır ve istenilen bilgi çağrılır. C gibi yordamsal dillerde ise her şey bir aradadır. Öğrenilmesi kolaydır. Daha sonra C++ dili ile object oriented'e geçilmiştir. C++ object oriented'in en geniş dil ailesidir. Bu sebeplerden dolayı C ile başlamayı öneriyorum.

C dili derlemeli bir dildir. Peki derleme(Complier) nedir ? Yıllardır duymuşunuzdur, makina dilini ve halk arasında bilgisayarlar 1 ve 0 çalışır diye bir söz vardır. Bu söz çok doğrudur. Biz klavyeden 'A,B,C' ne yazarsak yazılım, Merkezi işlem birimi (CPU) anlamaz. Onun anladığı tek dil makine dilidir, yani 1 ve 0'lardır. Bu yüzden bizim yazdıklarımızı derleyip makine diline çevirmeliyiz. Peki C programlama dili nasıl complier (derelme) edilir ? Önce bizim yazdığımız komutları Lexical anylazer (Sözel analizci )'den geçer. Bu aşamada, sizin kodlarınızı ne olduğunu çözümler, 2. aşama ise Syntax anylazer , burada komutlarımız doğru yazılıp yazılmadığını anlar. 3. aşama Sementic analyzer burada yazdığımız kodlar anlam kazanır. Sonra olarak code generator ile yeni kodlar oluşturularak object dosyasına, bu dosyada daha sonra compiler edilerek, makina diline dönüşür.

Şimdi DevC++ programı ile Mingw/GCC compileri ile indirerek ilk programımıza başlıyalım. The Dev-C++ Resource Site adresinden indirebilirsiniz. Programı kurduktan sonra,
File ->New->SourceFile yada Control + N diyerek kodlama sayfamızı açıyoruz. .C uzuantılı olarak kaydediyoruz. Mesela byanigli.c , ilkprogramım.c gibi. Hadi şimdi ilk programımızı yazalım.

İlk olarak bir kütüphane eklemeliyiz. Kütüphane nedir ? Bizim program içinde yazacağımız kodları tutan bir sayfadır. Şöyle düşünün, bir tez yazacaksınız ve elinizde bir konu var, Doğal olarak hemen bir kütüphaneye gidip, kütüphanenin veri tabanından konunuz ile ilgili kitapları ararsınız ve ilgili kitaptan gerekli bilgileri toplarsınız. C'de de iş böyledir. Siz bir komut yazdınız ve compiler etmeye başladığınızda, compiler direk kütüphaneyi inceler ve kodun ne olduğunu çözer. Biz de C programlama dilinin standart giriş çıkış kütüphanesini kullanacağız. İlk satıra aşağıdaki komutu yazmalıyız ki , program kütüphanesini dahil edelim.

Kod:
#include <stdio.h>

İnclude Türkçede dahil etmek anlamını taşır. Şimdi sırada tüm kodlarımızın çalışacağı bir main fonksiyonuna ihtiyacımız vardır.Bu fonksiyon bizim programımızın gövdesidir. Aslında aşağıdaki kod anlamsız gelse de hepsinin bir anlamı vardır. şimdilik bir kalıp olarak ezberleyin, fonksiyonlar dersine geldiğimizde detaylı olarak açıklanacaktır. Main fonksiyonu

Kod:
int main ()
{
getchar();
getchar();
return 0;
}



Şimdi programımızın gövdesini oluşturduk ve ilk olarak ekrana merhaba technopat yazdıralım. Bunun içim printf komutunu kullanmamız gereklidir. printf komutu içine ne yazılırsa yazılsın ekrana basan bir komuttur. Syntaxı inceliyelim.

Kod:
printf("Merhaba Technopat");
Burada dikkat edilecek nokta, bakın verilen mesaj (") çift tırnağın içinde. Birde C her komut sonuna ( noktalı virgül konulur. eğer koymazsak compiler komutun bitiğini ve bir alt satıra geçecegini anlayamaz.

Full program
Kod:
#include <stdio.h>
int main()
{
printf("Merhaba Technopat");

getchar();
getchar();
return 0;
}

Nasil compiler edeceğiz?


Ardinda run yada F9 basarak programı çalıştırabilirsiniz. Bir sonraki derste görüşmek üzere[/Code]


Dipnot : Eğer üniversite bir gün sizlerle karşılaşırsam ve sınavda getcharları yazarsanız 5şer puandan 10 puan sınav kağıdınızdan kırardım. Sebebi ise gereksizdir. Silip deneyin. Ancak onları yazmasaydık siyah ekran açılıp merhaba technopat yazıp kapanacaktı.
  • complicer.png
    40,6 KB · Görüntüleme: 541
İfadeler: 3 kişi

Yorumlar

B
''Source file not compiled'' hatası çıkıyor. Ne yapmalıyım?
 
  • C:\Dev-Cpp\libexec\gcc\mingw32\3.4.2 Bunu ekle, Tools> Compile options> Directories> Binaries dialogue box.
  • Programlar tabınında herşeyin önüne " C:\Dev-Cpp\bin" ekle
eğer çalışmazsa codeblocks yada visiual studio indir, geç. uğraşma
 
B
Visual Studio yapınca oldu. Sağolun.
 
Hocam küçük bir tavsiyede bulunmak istiyorum. DevC++ kadar kötü, ve son kullanıcıya sorun çıkarna bir IDE yok. Tercih gene sizin fakat ben DevC++ ı önermiyorum. İlk tercihim Eclipse ama, programlamayla ilk tanışan birisi Eclipse' nin interface i içinde boğulabilir diye düşünüyorum. CodeBlocks hem sade, hemde kullanımı basit, bence sizi takip eden arkadaşlara codeblocks önerin.

Burdan "ben düşük seviye dillerin binlerce kuralları arasında boğulmayayım, benim için önemli olan tek şey sonuçtur" diye ve Object oriented programlamayla uğraşmak isteyenlerede .NET framework ile birlikte Visual Studio 201X i öneriyorum.
 
Son düzenleme:
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…