C İşlevlerini Çağırma ve Bağlama
libc ve harici kütüphanelere bağlanın.
C İşlevlerini Çağırma ve Bağlama, CoddyKit'te ücretsiz bir Zig Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Zig Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Zig Academy kursu toplamda 4 dersten oluşur.
Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.
Importing Is Not Linking
@cImport gives you the declarations, but the actual machine code still lives in a C library you must link against.
Link Against libc
Most C calls need the C standard library. Tell the build to link libc so functions like printf resolve at link time.
exe.linkLibC();Linking on the CLI
For a quick run, pass the flag yourself. -lc links libc when you compile a single file directly.
zig build-exe main.zig -lcCall Like Native Code
Once linked, a C function is called just like a Zig one. You write c.printf(...) and Zig handles the calling convention.
c.printf("%d\n", 42);Match the Signature
You must pass arguments that fit the C signature. Wrong types are a compile error, since Zig knows the translated prototype.
Link a Named Library
For other libraries, name them. linkSystemLibrary tells the linker to pull in something like the math library.
exe.linkSystemLibrary("m");Return Values Come Back
A C function's return value arrives as a normal Zig value of the translated type, ready to store or test.
const n = c.abs(-5);Errors Use C Conventions
C has no error unions, so failures show up as return codes or a set errno. You check them the C way, by hand.
No Hidden Marshalling
Zig does no silent conversion of your data. What you pass is what C receives, keeping the call cheap and predictable.
Build File Wiring
In build.zig you attach linking to the artifact. The same exe step that compiles your code also records its libraries.
exe.linkLibC();
exe.linkSystemLibrary("z");Two Steps to Success
Calling C is always import plus link: bring in the declarations, then make sure the real symbols are available to the linker.
Quick Check
Think about what makes a C function actually resolve.
Recap
You learned that calling C needs both the import and linking, after which C functions are invoked just like native Zig ones. 🎯
Sıkça Sorulan Sorular
“C İşlevlerini Çağırma ve Bağlama” dersi ücretsiz mi?
Evet — “C İşlevlerini Çağırma ve Bağlama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Zig Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Zig Academy kursu toplamda 4 dersten oluşur.
“C İşlevlerini Çağırma ve Bağlama” dersinde ne öğreneceğim?
libc ve harici kütüphanelere bağlanın. Zig Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Zig Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Zig Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“C İşlevlerini Çağırma ve Bağlama” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Zig Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Zig Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- C Üstbilgilerini @cImport ile İçe Aktarma
- C İşlevlerini Çağırma ve Bağlama
- C İşaretçileri, Dizeleri ve Türleri
- C'yi Zig Olarak Okumak için zig translate-c