0

C Dili ile Pointer(İşaretleyici)

Bu dersimizde sizlerle Pointer(işaretleyici) konusunu işleyeceğiz.

Pointer bellek alanındaki bir gözün adresinin saklandığı değişkendir. Herhangi bir değişken kullanılabilir ancak önüne ” * “ konulmalıdır yada pointer için ” %p “ kullanabiliriz. Değişkenlerin tanımlı olduğu adres ise ” & ” ile tanımlanır.


Program Kodu:

Şimdi bir örnek ile ” * “ ve ” & ” işaretlerini kullanarak konumu öğrenelim.

#include <stdio.h>  // Standart giriş/çıkış kütüphanesi dahil edilmeli

int main()
{
    int sayi, *ptr;  // *ptr bir pointer
    sayi = 33;
    ptr = &sayi;     // ptr değişkenine sayi'nın adresini ata
    
    printf("Sayinin degeri (pointer'dan) = %d\n", *ptr);   // Pointer kullanarak sayi'nın değeri
    printf("Sayinin adresi = %p\n", (void *)ptr);          // Pointer'ın adres değeri (adres hexadecimal formatta)
    printf("Sayinin degeri = %d\n", sayi);                 // Sayi'nın direkt değeri
    printf("Sayinin adresi = %p\n", (void *)&sayi);        // Sayi'nın adresi
    
    getchar();  // Konsolu açık tutmak için
    return 0;
}

Ekran Çıktısı:

C
Sayinin degeri (pointer'dan) = 33
Sayinin adresi = 0x7ffee4d34a2c
Sayinin degeri = 33
Sayinin adresi = 0x7ffee4d34a2c

Program Kodu:

Şimdi de ” %p “ komutuyla konumu öğrenelim.

#include <stdio.h>
int main()
{
    int tam = 33;
    printf("icerik: %d\n", tam);               // Değerini yazdır
    printf("adres: %p\n", (void *)&tam);        // Adresini yazdır

    return 0;
}

Ekran Çıktısı:

C
icerik: 33              //değişkenin değeri
adres: 0x7ffee4d34a2c   //değişkeninin bellekte bulunduğu adres