C DLL Örneği
C DLL (Dinamik Bağlantı Kütüphanesi), C programlama dilinde yazılmış ve diğer C programları tarafından çağrılabilen bir kütüphanedir. DLL’ler, kodun yeniden kullanılabilirliğini ve bakımını kolaylaştırmak için kullanılır.
DLL’ler, Windows, Linux ve macOS gibi çeşitli işletim sistemlerinde kullanılabilir. Windows’ta, DLL’ler genellikle “.dll” uzantısına sahiptir. Linux ve macOS’ta ise “.so” veya “.dylib” uzantısına sahip olabilirler.
DLL’ler, aşağıdaki adımları izleyerek oluşturulabilir:
- DLL’nin işlevlerini tanımlayan bir başlık dosyası oluşturun.
- DLL’nin işlevlerini uygulayan bir kaynak dosyası oluşturun.
- DLL’yi derleyin ve bağlantılayın.
- DLL’yi sistem dizinine veya programın çalıştırıldığı dizine kopyalayın.
DLL’ler, aşağıdaki adımları izleyerek kullanılabilir:
- DLL’yi içeren başlık dosyasını programınıza ekleyin.
- DLL’nin işlevlerini programınızda çağırın.
- Programınızı derleyin ve çalıştırın.
C DLL Örneği
Aşağıdaki örnek, C programlama dilinde yazılmış basit bir DLL’dir. Bu DLL, iki sayıyı toplayan bir işlev içerir.
Başlık Dosyası
“`
ifndef MYDLL_H
define MYDLL_H
// DLL’nin işlevlerini tanımlayın
int add(int a, int b);
endif
“`
Kaynak Dosyası
“`
include
include “mydll.h”
// DLL’nin işlevlerini uygulayın
int add(int a, int b) {
return a + b;
}
“`
DLL’yi Derleme ve Bağlantılama
Windows’ta, DLL’yi aşağıdaki komutları kullanarak derleyebilir ve bağlantılayabilirsiniz:
cl /LD /Fe:mydll.dll mydll.c
Linux ve macOS’ta, DLL’yi aşağıdaki komutları kullanarak derleyebilir ve bağlantılayabilirsiniz:
gcc -shared -o mydll.so mydll.c
DLL’yi Kullanma
Aşağıdaki örnek, C programlama dilinde yazılmış basit bir programdır. Bu program, yukarıda oluşturulan DLL’yi kullanarak iki sayıyı toplar.
“`
include
include “mydll.h”
int main() {
// DLL’yi yükleyin
HMODULE hDll = LoadLibrary(“mydll.dll”);
// DLL’nin işlevini alın
int (add)(int, int) = (int ()(int, int))GetProcAddress(hDll, “add”);
// DLL’nin işlevini çağırın
int result = add(1, 2);
// Sonucu yazdırın
printf(“Sonuç: %d\n”, result);
// DLL’yi boşaltın
FreeLibrary(hDll);
return 0;
}
“`
İndirme Linki
Üretici Firma
Bu örnek, herhangi bir üretici firmaya ait değildir.
Ücretsiz mi?
Evet, bu örnek ücretsizdir.
Uyumlu İşletim Sistemleri
Bu örnek, Windows, Linux ve macOS işletim sistemlerinde çalışabilir.
Dosya Boyutu
Bu örnek, yaklaşık 10 KB boyutundadır.