Ara 23

C Programlama Dilinde En Sık Yapılan 10 Hata

source-code-583537_1280

C programlama dilinin tarihi 70’li yıllara dayansa da günümüzde hala yaygın olarak kullanılan dillerden birisi. Özellikle gömülü sistemlerde en çok kullanılan dil olma özelliğini koruyor. Oldukça esnek yapısıyla assembly’de yazılmış programlara yakın performanslı programlar yazılmasını sağlıyor. Ancak bu esneklik bütün sorumluluğu programcıya bıraktığından birçok hatanın yapılmasına da yol açabiliyor. Zaman zaman birçok güvenlik açığının sebebi de olabilen C programlama diline yapılan hatalardan en yaygın olan 10 tanesini burada paylaşacağım.

  1. Noktalı virgülü kullanılmaması gereken yerde kullanmak
    C’de zaman zaman karıştırılan durumlardan birisi de noktalı virgülün (;) kullanımıyla ilgili. Hemen hemen bütün ifadelerin sonuna konulduğu halde if, for, while gibi ifadelerin sonlarında noktalı virgül olmaması gerektiği bazen unutulabiliyor. O zaman da aşağıdaki koddaki gibi durumlar ortaya çıkabiliyor.

    for( x = 1; x<10; x++ );
    {
    printf( "%d\n", x )
    }

    Yukarıdaki örnekte for ifadesi ile 1’den 9’a kadar olan sayıların yazdırılması amaçlanıyor. Ancak for ifadesi sonundaki noktalı virgün yüzünden for ifadesinin sonrasında “boş” bir ifade varmış gibi işlem yapılıyor ve prinf() fonksiyonu 1 kere çağırılıp devam ediliyor.

  2. Süslü parantez kullanılmayan if ifadeleri
    if ( degisken == 12) 
    fonk1();
    fonk2();

    Continue reading