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): 4Sonuç 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
#include <stdio.h>
int main(void) {
// sizeof ile tür boyutlarını yazdır
return 0;
}Örnek çözüm
#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ı
printf("%zu", ____);
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 |