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

Eki 18

Processing Hakkında

processingÖnceki yazımda yeni bir kitap yazmaya başladığımı söylemiştim. Arduino konusundaki ilk kitabımdan sonra, bu da yine Arduino projeleri içeren bir kitap olacak. İlk kitapta Arduino’ya yeni başlayanları hedeflemiştim. Bu yeni kitapta biraz daha farklı uygulamalar olacak.

İkinci kitapta anlatacağım konular arasında Processing de var. Kitaptan önce çok az bir tanışıklığım olan Processing’le, daha fazla zaman geçirme fırsatım oldu. Giderek de daha çok sevmeye başladım. Ülkemizde çok fazla kullanılmadığını düşündüğüm Processing platformunu kısaca tanıtmak istiyorum.
Continue reading