CodeBlanks Logo Icon CodeBlanks

sizeof

  • C kursu
  • Başlangıç
  • Ders 16/116
  • 4 dk

sizeof operatörü ile tür boyutlarını öğrenirsin.

sizeof işleci

sizeof işleci bir türün veya değişkenin bellekte kaç bayt yer kapladığını verir. Sonuç size_t türündedir:

printf("%zu", sizeof(int));
// Çıktı (genelde): 4

Sonuç platformdan platforma değişebilir; bu yüzden %d yerine %zu kullanmak daha güvenlidir. sizeof derleme zamanında hesaplanır, çalışma zamanı maliyeti yoktur.

sizeof ne için?

sizeof üç temel amaçla kullanılır:

  • Taşınabilirlik: türe göre kod yazma (örneğin malloc(sizeof(int) * n))
  • Hata önleme: yanlış bayt sayısıyla kopyalamayı engeller
  • Belgeleme: kod okuyucuya türün boyutunu gösterir

Doğrudan 4 veya 8 yazmak yerine sizeof(int) yazmak kodunuzu farklı platformlarda da çalıştırır.

Uygulama Tür boyutlarını yazdır

Aşağıdaki programa iki printf çağrısı ekle: biri sizeof(int)'i, diğeri sizeof(double)'ı %zu ile yazdırsın. Çıktı int: 4\ndouble: 8 olmalı.

Başlangıç kodu

main.c
#include <stdio.h>

int main(void) {
    // sizeof ile tür boyutlarını yazdır
    return 0;
}

Örnek çözüm

main.c
#include <stdio.h>

int main(void) {
    printf("int: %zu\n", sizeof(int));
    printf("double: %zu", sizeof(double));
    return 0;
}

Beklenen çıktı

int: 4
double: 8

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 sizeof sonucu için hangi belirteç?

  • %zu Doğru cevap
  • %s
  • %c
  • %d

Açıklama: sizeof sonucu size_t türündedir; %zu ile yazdırılır.

2 sizeof kullanımı

Soru
printf("%zu", ____);
Cevap
printf("%zu", sizeof(int));

Açıklama: sizeof(int) int türünün boyutunu verir.

3 sizeof kavramlarını eşleştir

Kavram Anlamı
sizeof Boyut işleci
size_t Boyut türü
%zu Boyut belirteci
4 int boyutu

Başlangıç bölümündeki tüm dersler