C nedir?
C, makineden bağımsız olan ve çeşitli uygulamalarda yaygın olarak kullanılan yapısal veya prosedür odaklı bir programlama dilidir.
C, işletim sistemlerinden (Windows gibi) Oracle veritabanı, Git, Python yorumlayıcısı ve çok daha fazlası gibi karmaşık programlara kadar geliştirme yapmak için kullanılabilecek temel programlama dilidir. C programlama dili, diğer programlama dillerinin temelini oluşturduğu için tanrının programlama dili olarak adlandırılabilir. C dilini biliyorsak diğer programlama dillerini de kolaylıkla öğrenebiliriz. C dili, büyük bilgisayar bilimcisi Dennis Ritchie tarafından Bell Laboratuvarlarında geliştirildi. Onu diğer programlama dillerinden farklı kılan bazı ek özellikler içerir.
C++ nedir?
C++, tarafından geliştirilen özel amaçlı bir programlama dilidir. Bjarne Stroustrup 1980 dolaylarında Bell Laboratuvarlarında. C++ dili, C diline çok benzer ve C ile o kadar uyumludur ki, C++ nesne yönelimli bir programlama dili olmasına rağmen herhangi bir kod kaynağını değiştirmeden C programlarının %99'unu çalıştırabilir. C'den daha güvenli ve iyi yapılandırılmış bir programlama dili.
C ve C++ arasındaki farkları anlayalım.
C ve C++ arasındaki farklar şunlardır:
C yapısal bir programlama dilidir ve sınıfları ve nesneleri desteklemez; C++ ise sınıflar ve nesneler kavramını destekleyen nesne yönelimli bir programlama dilidir.
C, kodun satır satır kontrol edildiği yapısal programlama dilini desteklerken C++, sınıf ve nesne kavramını destekleyen nesne yönelimli bir programlama dilidir.
Dennis Ritchie, Bell Laboratuvarlarında C dilini geliştirirken, Bjarne Stroustrup, 1980'lerde Bell Laboratuvarlarında C++ dilini geliştirdi.
C++, C programlama dilinin bir üst kümesidir. C++, C kodunun %99'unu çalıştırabilir ancak C dili, C++ kodunu çalıştıramaz.
C yukarıdan aşağıya yaklaşımı takip ederken C++ aşağıdan yukarıya yaklaşımı takip eder. Yukarıdan aşağıya yaklaşım ana modülleri görevlere ayırır; bu görevler alt görevlere bölünür ve bu böyle devam eder. Aşağıdan aşağıya yaklaşım, önce alt seviyedeki modülleri, ardından bir sonraki seviyedeki modülleri geliştirir.
C'de, kapsüllemeyi ve bilgi gizlemeyi desteklemediğinden veriler dışarıdakiler tarafından kolayca manipüle edilebilirken, C++ çok güvenli bir dildir; yani, hem kapsüllemeyi hem de veri gizlemeyi desteklediğinden hiçbir yabancı, verilerini manipüle edemez. C dilinde işlevler ve veriler özgür varlıklardır ve C++ dilinde tüm işlevler ve veriler nesneler biçiminde kapsüllenir.
Fonksiyon aşırı yüklemesi, aynı isimde fakat parametreleri farklılık gösteren birden fazla fonksiyona sahip olmanızı sağlayan bir özelliktir. C, işlevin aşırı yüklenmesini desteklemezken, C++, işlevin aşırı yüklenmesini destekler.
İşlev geçersiz kılma, temel sınıfta zaten tanımlanmış olan işleve özel uygulama sağlayan bir özelliktir. C, işlev geçersiz kılmayı desteklemezken, C++, işlev geçersiz kılmayı destekler.
C referans değişkenlerini desteklemezken C++ referans değişkenlerini destekler.
C 32 anahtar kelime içerir ve C++ 52 anahtar kelimeyi destekler.
Ad alanı, sınıflar, nesneler ve işlevler gibi varlıkları belirli bir ad altında gruplandıran bir özelliktir. C, ad alanı özelliğini içermez, C++ ise ad çakışmalarını önleyen ad alanı özelliğini destekler.
C, istisna yönetimine doğrudan destek sağlamaz; istisna işlemeyi destekleyen işlevleri kullanması gerekir. C++, try-catch bloğu kullanarak istisna işlemeye doğrudan destek sağlar.
C'de giriş ve çıkış işlemleri için sırasıyla scanf ve printf fonksiyonları kullanılırken, C++'da giriş ve çıkış işlemleri için sırasıyla cin ve cout kullanılır.
C, bellek tahsisi için calloc() ve malloc() işlevlerini ve bellek tahsisinin kaldırılması için free() işlevini destekler. C++, bellek tahsisi için yeni bir operatörü ve hafıza tahsisinin kaldırılması için silme operatörünü destekler.
Kalıtım, alt sınıfın ana sınıfın özelliklerini yeniden kullanmasına olanak tanıyan bir özelliktir. C dili kalıtımı desteklemezken C++ kalıtımı destekler.
C programının kullanım alanları C++ programı kullanırken başlık dosyası başlık dosyası.
Yukarıdaki farklılıkları tablo halinde özetleyelim.
HAYIR. | C | C++ |
---|---|---|
1) | C takip ediyor prosedür tarzı programlama. | C++ çoklu paradigmadır. Her ikisini de destekliyor prosedürel ve nesne yönelimli. |
2) | Veriler C'de daha az güvenlidir. | C++'da, sınıf üyelerine yönelik değiştiricileri kullanarak sınıf üyelerini dışarıdaki kullanıcılar için erişilemez hale getirebilirsiniz. |
3) | C takip ediyor yukarıdan aşağıya yaklaşım. | C++ aşağıdakileri takip eder aşağıdan yukarıya yaklaşım. |
4) | C, işlevin aşırı yüklenmesini desteklemez. | C++ fonksiyon aşırı yüklemesini destekler. |
5) | C'de yapıdaki işlevleri kullanamazsınız. | C++'da yapıdaki işlevleri kullanabilirsiniz. |
6) | C referans değişkenlerini desteklemez. | C++ referans değişkenlerini destekler. |
7) | C'de, scanf() ve printf() esas olarak giriş/çıkış için kullanılır. | C++ esas olarak akışı kullanır cin ve cout Giriş ve çıkış işlemlerini gerçekleştirmek için. |
8) | C'de operatörün aşırı yüklenmesi mümkün değildir. | C++'da operatörün aşırı yüklenmesi mümkündür. |
9) | C programları ikiye ayrılır prosedürler ve modüller | C++ programları ikiye ayrılır işlevler ve sınıflar. |
10) | C, ad alanı özelliğini sağlamaz. | C++ ad alanı özelliğini destekler. |
on bir) | C'de istisna yönetimi kolay değildir. Diğer fonksiyonları kullanarak gerçekleştirmek zorundadır. | C++, Try and Catch bloğunu kullanarak istisna yönetimi sağlar. |
12) | C mirası desteklemiyor. | C++ kalıtımı destekler. |