Linux'te execl ile dosya çalıştırma

execl fonksiyonunu çağırdığımız anda parametre olarak verdiğimiz çalıştırılabilir dosya execute edilir ve program bu yeni process'e dönüşür.  Aşağıda programda process fork edilip child process'i /bin/ls process'ine dönüştürülmektedir. Çıktılardan istenilen sonuçların elde edildiği...

Linux'te child process oluşturma

Linux'te child process oluşturmak için ilk aşama fork fonksiyonunun çağrılmasıdır.   fork çağrıldığı anda processin bir kopyasını oluşturur. Genelde fork exec'le beraber kullanılarak ikinci bir process oluşturmak için kullanılır. Linux sistemlerde process oluşturmanın yolu fork ve...

atexit Fonksiyonu

06:13
Bir program exit yaparken programdan çıkmadan önce çağrılmasını istediğimiz fonksiyonlar varsa bunlar için atexit fonksiyonunu kullanmamız gerekir. Bu fonksiyon parametre olarak aşağıda görüldüğü gibi geri dönüşü void parametre almayan bir fonksiyon adresini istemektedir. Bu fonksiyon istenildiği gibi...

printf fonksiyonunun türevleri [ printf, sprintf, snprintf, fprintf ]

23:17
Program çıktılarını ekrana, dosyaya vb. yerlere yazmak için kullanılan printf, sprintf, snprintf, fprintf fonksiyonlarını kısaca inceleyelim: printf: printf formatlı olarak ekrana yazmak için kullanılan bir fonksiyondur. Ortalama herkesin bildiği bir fonksiyondur. int printf(const char...

Linux'te C için statik kütüphane oluşturma ve kullanma

Kütüphane genel olarak bir proje grubunun dış dünyada (diğer yazılım proje gruplarının vb.) kullanılması amacıyla oluşturdukları dosyalar için kullanılan kavramdır. Bu kütüphaneler içeriğinde hangi fonksiyonları kullanabileceğimizi belirten yani dış dünyaya sundukları interface' leri bildiren bir...

Linux'te cURL Kütüphanesinin Kullanılması

12:03 , ,
apt-get install libcurl4-gnutls-dev ile ilgili kütüphanelerin kurulumu yapilir. Yukarıdaki gibi örnek bir http get isteği için kod yazılır. Derleme işlemi sirasinda linker'a -l parametresi ile curl kütüphanesi ilave edilir. eğer linker libcurl'ü bulamıyorsa bu durumda -L ile curl kütüphanesinin...

gcc derleme parametreleri

11:51
Linux üzerinde kodlama yapıyor ve eclipse gibi IDE'ler kullanmıyorsanız gcc ile komut satırında fazlasıyla iç içe olunması gerekmektedir. Biz de çok kullanılan gcc parametrelerini buradan inceleyelim: gcc <.c dosyasi> Verilen dosyadan çalıştırılabilir (hata yoksa) bir dosya oluşturur. Aşağıda...

C'de multi solution projelerde visual studio ayarları

11:38 ,
C veya C++ projelerinde birden fazla projeyi aynı anda yönetmek bir projenin çiktisini .lib yapmak ve diğer projenin bu .lib'i kullanması gibi senaryolar yazilim proje dünyasında sık karşılaşılan durumlarıdır. Visual Studio yardımıyla biz de temel düzeyde bir örnek oluşturalım. Bir tane .lib üreten...

if deyimi ile ilgili tüyolar

10:37
if deyimi yazılırken if’in içinde birden fazla kontrol yapılacaksa if(exp1 && exp2 && exp3 … gibi durumlarda) başa en az maliyetli olan konur ki çalışma anında kontrol maliyeti düşsün ya da olumsuz olma ihtimali yüksek olan varsa başa gene bu ifade konulur ki maliyet açısından...

C'de memory alanlarının kopyalanması

11:37
Aşağıda anlatacağım C fonksiyonları bir memory bloğundaki verileri başka bir memory bloğuna kopyalamak için kullanılmaktadır. memcpy: memcpy bir memory bloğundaki bilgiyi diğer memory bloğuna fonksiyona geçirilen 3. parametrede geçen değer kadar byte kopyalaması yapar. memory overlap sorununa karşı...