BÖLÜM 2: C Programlamaya Giriş
2.1 Giriş
C dili, bilgisayar programı tasarımına yapısal ve disiplinli bir yaklaşım için zemin hazırlamıştır. Bu bölümde C programlamaya giriş yapılmıştır ve C’nin birçok önemli özelliğini gösteren birkaç örnek sunulmuştur.
2.2 Basit bir C Programı : Bir Satır Yazı Yazma
// C’de ilk program
#include
int main( void )
{
printf( “Welcome to C! n”);
}
#include
Önişlemci Talimatı
C önişlemcisine bir talimattır. # ile başlayan satırlar derlemeden önce önişlemci tarafından işlenir.
main
Fonksiyonu
main fonksiyonu her C programının bir parçasıdır. main’den sonraki parantez main’in fonksiyon olarak adlandırılan bir program yağı taşı olduğunu işaret eder. C programları, bir veya daha fazla fonksiyon içerir. Bu fonksiyonlar içerisinde mutlaka bir tanesi main olmak zorundadır. Her C programı yürütülmeye main fonksiyondan başlar. main’in solundaki int anahtar kelimesi main’in bir tam sayı değer gönderdiğini işaret eder. Fonksiyonlar yürütülmek için çağırıldığında aynı zamanda veri alabilirler. Burada parantez içerisindeki void main herhangi bir bilgi almadığı anlamına gelir.
2.3 Bir Başka Basit C Programı : İki Tam Sayıyı Toplama
// Toplama Programı
#include
int main(void)
{
int integer1;
int integer2;
int sum;
printf(“Enter first integern”);
scanf(“%d”,&integer1);
printf(“Enter second integern”);
scanf(“%d”,&integer2);
sum = integer1 + integer2;
printf(“Sum is %d n”,sum);
}
İyi Programlama Uygulaması 2.6
Basit bir değişken ismi olarak kullanılan bir kimliğin ilk harfi küçük harf olmalıdır. Sonraki kısımlarda büyük harf ile başlayan kimlikler ile hepsi büyük harf olan kimliklere özel anlamlar yüklenecektir.
scanf Fonksiyonu ve Biçimlendirilmiş Girişler
Kullanıcıdan bir değer almak için scanf kullanılır (‘f’, ‘biçimlendirilmiş’ e karşılık gelir). Fonksiyon genelde standart giriş birimi olan klavyeden okunur. Burada scanf’in %d ve &integer1 şeklinde iki argümanı vardır. Birincisi biçim kontrol katarı, kullanıcı tarafından girilecek verinin türünü belirler. %d çevrim belirteci verinin bir tamsayı olması gerektiğini belirtir. Buradaki % işareti scanf ve printf tarafından bir çevrim belirteci başlatan özel bir karakter olarak işlem görür. scanf’in ikinci argümanı değişken isminin önünde & işareti ile başlar. Buna adres işlemi denir. Değişken ismi ile birlikte &, integer1 değişkeninin saklandığı hafızadaki adresini scanf’e bildirir.
Yaygın Programlama Hatası 2.7
Sıfıra bölmeye çalışmak normalde bilgisayar sistemlerinde tanımsızdır ve genellikle sonlandırıcı hata ile sonuçlanır. Yani program görevini başarılı bir şekilde bitiremeden durmasına neden olan bir hatadır. Sonlandırıcı olmayan hatalar programın genelde doğru olmayan sonuç üreterek tamamlanmasına izin verir.
CERT C Güvenli Kodlama Standardı’ndan bahsedilmiştir ve sistemlerin saldırıya açık hale getiren programlama uygulamalarından sakınmanıza yardımcı olacak belirli kılavuzların takip edileceği işaret edilmiştir.
Tek Argümanlı printf Kullanımından sakınma
Yeni satırla sonlanan bir karakter katarını göstermeye ihtiyacınız varsa, karakter katarından sonra yeni satır gösteren puts fonksiyonunu kullanın.
printf( “ Welcome to C! n” );
puts( “ Welcome to C! ” );
Eğer yeni bir satır karakteriyle sonlanmayan bir yazı göndermek istiyorsanız, iki argümanlı printf kullanın.
printf( “ Welcome ” );
printf(“%s”,”Welcome”);
Buraya reklam verebilirsiniz. Detaylı bilgi için lütfen iletişime geçiniz.