Özet - İşaretçi temelleri
- C kursu
- Başlangıç
- Ders 76/116
- 5 dk
&, * ve NULL'u birleştirerek bir takas fonksiyonu yazarsın.
Özet: İşaretçi temelleri
Bu grupta işaretçilerin temellerini gördün. İşaretçi, bellekte bir adresi tutan değişkendir; & ile adres alınır, * ile değere erişilir.
int *ptr: int işaretçi tanımı&x: x'in adresi*ptr: ptr'nin gösterdiği değerNULL: boş işaretçi; güvenli başlangıçptr + 1: bir sonraki elemana atlar
Şimdi bunları birleştiren bir görev yapalım.
Uygulama İşaretçi ile değer oku ve yaz
int x = 15; tanımla. int *ptr = &x; ile bağla. printf("%d\n", *ptr); ile ptr'nin gösterdiği değeri yazdır. Çıktı 15 olmalı.
Başlangıç kodu
#include <stdio.h>
int main(void) {
int x = 15;
/* ptr'yi x'e bağla */
/* printf %d ile *ptr yazdır */
return 0;
}Örnek çözüm
#include <stdio.h>
int main(void) {
int x = 15;
int *ptr = &x;
printf("%d\n", *ptr);
return 0;
}Beklenen çıktı
15
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Hangi operatör bir değişkenin adresini verir?
- & Doğru cevap
- *
- +
- -
Açıklama: & operatörü adresi verir.
2 NULL kontrolü
int *p = NULL;
if (p ____) { /* güvenli değil */ }
int *p = NULL;
if (p == NULL) { /* güvenli değil */ }
Açıklama: p == NULL ile boş kontrolü yapılır.
3 İşaretçi kavramlarını eşleştir
| Kavram | Anlamı |
|---|---|
& |
adres alır |
* |
değere erişir |
NULL |
boş işaretçi |
ptr + 1 |
sonraki eleman |