Yazan : Şadi Evren ŞEKER C dilinde tanımlı olan bu fonksiyon basitçe verilen ascii değerin integer karşılığını döndürür. Yani dizgi (string) yapısındaki bir bilgiyi tamsayı (integer yapısına çevirir) int x = atoi ( “123”); satırından sonra x değişkeninin içinde sayısal olarak 123 değeri bulunur. Örnek kod aşağıda verilmiştir: #include <stdio.h> #include <stdlib.h> int main () […]
Category: C/C++
Tip İnkılabı (Tip Dönüştürme, Type Casting)
Yazan : Şadi Evren ŞEKER Programlama dilinde bir değişkenin (variable) tipinin değiştirilmesi anlamındadır. Temel olarak değişkenlerin tanımlandığı andan itibaren bir tipi bulunur. Bunun her ne kadar bazı dillerde istisnası olsa da (php, visual basic, perl gibi) bu dillerde de değişkenin tipi yine de tipsiz olarak belirtilmektedir. İşte tanımlama sırasında sahip olunan tipin daha sonradan değiştirilmesi […]
Üzerineyükleme (Overloading)
Yazan : Şadi Evren ŞEKER Nense yönelimli programlama yaklaşımına göre çok şekilliliğin (polymorphism) bir gereği olarak bir işin birden farklı şekilde yapılabilmesini sağlayan özelliktir. Temel olarak method overloading (metod üzerine yükleme) veya operatör üzerine yükleme (operator overloading) olarak iki farklı şekilde incelenebilir. Aşağıda bir fonksiyonun üzerine yüklenmesi (function overlaoding) örneği verilmiştir: public class dikdörtgen{ […]
Matrisin tersinin alınması (Mantrix Inverse)
Yazan : Şadi Evren ŞEKER Bir matrisin tersini almak çarpma işlemine göre tersini almak anlamındadır. Örneğin A ve B matrislerinin çarpımından C matrisi çıkıyorsa; C matrisi ile A matrisinin tersi B matrisini vermelidir. Bunu bir nevi bölme olarak düşünmek de mümkündür. 2 boyutlu bir matrisin tersini bulmak içn öncelike determinantı hesaplanır ardından aşağıda gösterildiği üzere […]
Dangling Else ( Sallanan Else)
Yazan : Şadi Evren ŞEKER Bazı programlama dillerinin esnek yapısından kaynaklanan ve belirsizlik (ambiguity) sebebi olan bir problemdir. Bu probleme göre bir “else” satırının hangi koşula bağlı olduğunun anlaşılması mümkün değildir. Bu durumda dallanma (çatallanma, fork) işleminde belirsizlik ortaya çıkar. Örneğin aşağıdaki satırı ele alalım: if a then if b then s1 else s2 Bu […]
Münasebet (Aggregation)
Yazan : Şadi Evren ŞEKER Nense yönelimli programlama mantığında kullanılan bir terimdir. Bu terime göre iki nesne arasında ilişki kurulurken seçilebilecek yöntemlerden birisi de münasebet(aggregation) ilişkisidir. Örneğin bir şirketin çeşitli birimleri olabilir. Örneğin muhasebe, satın alma, yönetim gibi birimler şirkete bağlıdır ve yanlızca bir şirkete bağlı olabilirler. Ayrıca bu birimlerde çalışan kişiler de bulunur. Dolayısıyla […]
C ve Komut Satırı (C Console Parameters)
Yazan : Şadi Evren ŞEKER C dilinde öncelikli olarak çalıştırılacak olan fonksiyon main fonksiyonudur. Main fonksiyonunun prototipi aşağıdaki şekildedir: int main(int argc,char *argv[]) yukarıda görüldüğü üzere main fonksiyonu bir integer (tam sayı) döndürmektedir. Bu C90 standardına göre belirlenmiştir ancakçoğu derleyici (compiler) main fonksiyonunun void dödürmesine de izin verir. Bu dönen değer C progrmaımızı çalıştıran işletim […]
C ile Dosya İşlemleri
Yazan : Şadi Evren ŞEKER Bu yazının amacı C dilinde dosya işlemlerinin nasıl yapıldığını anlatmaktır. C dilindeki dosya işlemlerinden önce bu dilde yazılan programın çalışacağı işletim sisteminin dosya yapısının iyi bilinmesi gerekmektedir. Bu yazının konusu dışında olan işletim sistemlerinin kullandığı dosya sistemlerini lütfen okuyunuz. C dilinde dosya işlemleri için file.h dosyasının içerilmesi (include) gerekir. #include […]
C Dilinde Operatörler (işlemler, operators)
Yazan : Şadi Evren ŞEKER Bu yazıda C dilindeki ve C dilini temel alan JAVA, C++ , C# gibi dillerdeki operatörlerin açıklaması ve öncelik sıralaması verilmiştir. Operatörlerin hepsini aşağıdaki tabloda görmemiz mümkündür. Bu tabloda her satırda bulunan işlemler aynı derecede önceliğe sahiptir. Üst satırda bulunan işlem, alttakilerinden daha önceliklidir. Operatör Tanımı Birleştirme Özelliği () [] […]
Dallanma (Çatallanma, Fork)
Yazan: Şadi Evren ŞEKER Yapısal programlamaya (Structered Programming) uygun olan bir programlama dilinde bulunması gereken temel 3 özellikten birisi de dallnamadır. Buna göre program akışı içerisinde bir alt programın (sub program) çalışıp çalışmayacağına karar verilebilmeli ve bu karar bir koşul ile programlanabilmelidir. Aşağıdaki akış diyagramında (flow chart) bir eşkenar dörtgen ile bu durum ifade ediliştir: […]