Life Hunter
Lapis Toplayıcısı
- En iyi cevaplar
- 0
Herkese merhaba c++ dersleri hazırlamaya karar verdim. Öncelikle kendimi biraz tanıtmam gerekir. Forumun eski üyelerinden biriyim beni tanıyan tayfa artık yok heralde çünkü yaklaşık 2 ve ya 3 sene önce aktiftim forumda. Forumda bayağı bir vakit geçiriyodum eskiden. Benim olduğum dönemde yönetici olarak craft_man vardı halen varmı bilmiyorum uzun süredir girmiyorum. Foruma tekrar bir göz atayim dedim ve programlamaya olan ilginin arttığını gördüm. Tabi ben java programcısı değilim OOP ihtiyacı duyduğum zaman C# takılırım java ile hiç işim olmadı. Ama onun dışında C/C++ programcısıyım dır. Neyse derse geçelim:
Kodun Çalıştırılması:
Diyelim ki elimizde şöyle bir kod var. C++ programlama ile ilgili henüz bir şey anlatmadığı mı biliyorum kodu örnek olarak verdim. Eğer biz direk gidip bu kodu işlemciye yollarsak işlemci hiçbir şey anlamaz. İşlemcinin tek anladığı kod vardır oda makine kodu. (Sıfır ve birler yani. Makine koduna ilerde değineceğiz şimdilik kafanıza takmayın.)
Bizim bir şekilde bu kodu makinenin anlayabileceği dile çevirmemiz gerek. Peki bu işi nasıl yapacağız?
Derleyici adı verdiğimiz yazılımlar sayesinde bu işlem gerçekleşir. Derleyici nedir?
Derleyiciler bizim girdiğimiz kodu makinenin anlayabileceği makine koduna çeviren yazılımlardır.
Aslında derleyici C++ kodunu sadece makine koduna çevirmiyor. Derleyici ek olarak çevrilen makine kodunu çalıştırabilmek için, çalıştığı işletim sisteminin çalıştırabilir dosyasını oluşturuyor. (Windows için .exe mesela)
Her işletim sisteminin kendine özel çalıştırılabilir dosyaları vardır. Windows ile Linux işletim sistemlerini ele alalım mesela. Bu iki işletim sisteminin kendine has çalıştırılabilir dosyaları vardır ve bunlar birbirinden farklıdır. Örneğin Windows'un kendi çalıştırabilir dosyalarının uzantısı exe dir ve bu dosyaların içerisinde belirli bir yapı vardır. Exe nin yapısı Linux un çalıştırılabilir dosyasının yapısından farklıdır.
Derleyici de, bu yapıyı bilmek zorundadır ve çevirdiği makine kodunu,Bulunduğu işletim sisteminin çalıştırılabilir dosyasının içine yerleştirmesi gerekir.
Buradan şöyle bir şey çıkartabiliriz, Windows için olan C++ derleyicisi farklı olacak, Linux için olan C++ derleyicisi ise farklı olacak. Çünkü bu iki işletim sisteminin çalıştırabilir dosyaları farklıdır.
Tabi exe dosyasını oluşturmak, kodun direk çalışacağı anlamına gelmez. Oluşan exe dosyasını da açmak gerekir. Normalde biz bir programı açmak için üzerine çift tıklarız, ama derleyici bizim çift tıklamamıza gerek kalmadan oluşan exe dosyasını otomatikman açar. Bizde kodumuzun çıktısını ekranda görürüz.
Yani derleme işleminde 3 işlem gerçekleşir:
Kodun Çalıştırılması:
Kod:
int main()
{
cout << "Merhabalar" << endl;
system("pause");
}
Bizim bir şekilde bu kodu makinenin anlayabileceği dile çevirmemiz gerek. Peki bu işi nasıl yapacağız?
Derleyici adı verdiğimiz yazılımlar sayesinde bu işlem gerçekleşir. Derleyici nedir?
Derleyiciler bizim girdiğimiz kodu makinenin anlayabileceği makine koduna çeviren yazılımlardır.
Aslında derleyici C++ kodunu sadece makine koduna çevirmiyor. Derleyici ek olarak çevrilen makine kodunu çalıştırabilmek için, çalıştığı işletim sisteminin çalıştırabilir dosyasını oluşturuyor. (Windows için .exe mesela)
Her işletim sisteminin kendine özel çalıştırılabilir dosyaları vardır. Windows ile Linux işletim sistemlerini ele alalım mesela. Bu iki işletim sisteminin kendine has çalıştırılabilir dosyaları vardır ve bunlar birbirinden farklıdır. Örneğin Windows'un kendi çalıştırabilir dosyalarının uzantısı exe dir ve bu dosyaların içerisinde belirli bir yapı vardır. Exe nin yapısı Linux un çalıştırılabilir dosyasının yapısından farklıdır.
Derleyici de, bu yapıyı bilmek zorundadır ve çevirdiği makine kodunu,Bulunduğu işletim sisteminin çalıştırılabilir dosyasının içine yerleştirmesi gerekir.
Buradan şöyle bir şey çıkartabiliriz, Windows için olan C++ derleyicisi farklı olacak, Linux için olan C++ derleyicisi ise farklı olacak. Çünkü bu iki işletim sisteminin çalıştırabilir dosyaları farklıdır.
Tabi exe dosyasını oluşturmak, kodun direk çalışacağı anlamına gelmez. Oluşan exe dosyasını da açmak gerekir. Normalde biz bir programı açmak için üzerine çift tıklarız, ama derleyici bizim çift tıklamamıza gerek kalmadan oluşan exe dosyasını otomatikman açar. Bizde kodumuzun çıktısını ekranda görürüz.
Yani derleme işleminde 3 işlem gerçekleşir:
- Girdiğimiz kod derleyici tarafından işlemcinin anlayabileceği makine koduna çevrildi.
- Çevrilen kodu çalıştırabilmek için, derleyici tarafından çalıştığı işletim sisteminin çalıştırılabilir dosyası haline getirildi.
- Oluşan çalıştırılabilir dosya derleyici tarafından çalıştırıldı.
Kafanızı karıştıran ve ya anlamadığınız yer varsa sormaktan çekinmeyin.